Извините, если это было задано раньше, но я не могу его найти. Я ищу авторитетное описание всех допустимых строк, которые могут быть использованы в качестве ссылки, например, «A1: C5», «$ A: $ A», $ A2 »и т. Д. Это кажется довольно простой вещью, я потратил впустую часы, пытаясь найти его. Все, что я могу найти, это болото «полезных» примеров, но никаких ссылок.Авторитетный синтаксис диапазона значений Excel
ответ
Я не знаю, есть ли список форматов, потому что на самом деле существует только формат 2: A1 и формат R1C1. Вы не указываете формат диапазона, когда используете A1: C3, потому что: на самом деле это оператор диапазона.
Варианты $ A $ 1, $ A1, A $ 1 - это только варианты - варианты , определяя, что при копировании ссылки координата перед $ не должна меняться, но в противном случае координата может измениться относительно копии.
R1C1 более сложный, поскольку он позволяет относительность. R3C2 является абсолютной ссылкой на Row 3, Column 2 (B3 в нотации A1), а использование фигурных скобок [] в ссылке R1C1 указывает, что оно относится к текущей ячейке R [-2] C [1] из ячейки R3C2 будет давать R1C3 (C1).
Почти забыл. Также может быть ссылка на ячейки на другом листе. «Лист2»! IV256
Я использую
(((\w*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d+)
как регулярное выражение для определения ссылок на ячейки в формате А1
Спасибо, но это не авторитетная ссылка, которую я искал, и, как вы можете видеть, требуется довольно много предложений, чтобы даже начать описывать возможности: вы забыли несколько случаев, таких как A: A (целое столбец), 1: 1 (целая строка) и, возможно, другие, о которых я не знаю. Это абсолютно пугает ум, что синтаксис этого диапазона должен (по-видимому) нигде не указываться. Это * этот * стандарт документации для устаревших API Microsoft? Cornelius: да, также RC-стиль, то есть любые и все допустимые строки диапазона, не ограничиваясь примерами, которые я дал в моем OP. – olefevre
Просто любопытство ... Для чего вы используете это регулярное выражение? –
@belisarius Я использую его в механизме вычисления PHPExcel для идентификации ссылок на ячейки - на данный момент я не активно поддерживаю прямые ссылки на столбцы или строки (например, B: B или 1: 1 в формулах) + используется для идентификации ссылок на ячейки, которые может потребоваться изменение при вставке новой строки или столбца на листе –
Проблема заключается в том, что существует множество операторов (Range, пересекаться, неявное пересекаются и т. д.), функции (INDEX, OFFSET, CHOOSE, INDIRECT + пользовательские функции), Определенные имена и структурированные ссылки в таблице и т. д., которые могут быть отменены для предоставления допустимой ссылки диапазона. Таким образом, чтобы выполнить полную работу, нужно разбор произвольных формул Excel. И это также зависит от версии Excel.
Если все, что вы хотите сделать, это работа со стандартными явными ссылками на диапазон, обычный трюк состоит в том, чтобы преобразовать строку в нотацию R1C1 и работать с ней. Синтаксис ссылок R1C1 достаточно хорошо описан в документации Excel.
Существует также BNF-описание формул Excel, доступных где-то, но я потерял ссылку.
Да, существует множество функций, возвращающих диапазон, но я специально задавал вопрос о литералах диапазона. – olefevre
Я подозреваю, что BNF, что @Charleswilliams имеет в виду [здесь] (http://homepages.ecs.vuw.ac.nz/~elvis/db/Excel.shtml). Он не является авторитетным, но содержит краткие описания синтаксиса R1C1 и Range, который охватывает все, что я видел за последнее десятилетие +. –
«он используется для идентификации ссылок на ячейки, которые могут нуждаться в модификации при вставке новой строки или столбца в таблице»
Если строки/столбцы вставляются с Excel жить (в отличие от взлома книги с помощью другого приложение), любые ссылки будут автоматически обновляться до нового адреса.
Это похоже на забавное упражнение. Я собираюсь перечислять как можно больше, и, надеюсь, другие люди могут указать на те, о которых я забыл/пропустил/не знал.
Этаких-гид на то, что вы просите, и источник для тех, кто ищет дополнительный documentaion: http://www.excelfunctions.net/Excel-Reference-Styles.html
я собираюсь начать с 5 широкими категориями - A1, R1C1, таблица, формула , и ссылки VBA. Я буду игнорировать другие программы, которые могут взаимодействовать с Excel на данный момент (хотя я мог бы добавить в Python, если это официально добавлено)
Все примеры будут использовать стиль ссылки A1, поскольку они более интуитивно понятны для неопытный пользователь.
A1 Тип Артикул:
стиль A1 говорит нам координаты данной ячейки. Буквенно часть говорит нам, какой столбец мы в то время как цифровая часть говорит нам, какие строки мы в
Cell Ссылки:
A1
- основная ссылка на ячейку.. Ссылки на ячейку A1, и при перетаскивании формул через столбцы и строки это изменится. Например, если ваша формула находится в C1, и вы переместите ее на D2, теперь она будет ссылаться на B2.
Хорошее применение: сравнение двух листов друг с другом. ='Sheet1'!A1='Sheet2'!A1
будет сравнивать данные на листе 1 с листом 2 и давать true/false, если они совпадают или нет. Формулу можно легко сдвинуть сбоку и вверх/вниз для дополнительных сравнений.
$A1
- Это блокирует колонку. Когда вы перетаскиваете формулы, строка изменится, но столбец не будет. Полезно, если вы всегда хотите ссылаться на один и тот же столбец в формуле. Например, если ваша формула находится в C1, и вы переместите ее на D2, теперь она будет ссылаться на $ A2.
Полезный пример: Формулы в вспомогательных столбцах. A1 = $C1*2
будет аккуратно скользить вниз без каких-либо проблем, и если вы переместите его на столбец B, он будет продолжать ссылаться на C.
A$1
- Это блокирует строку. Когда вы перетаскиваете формулы, столбец изменится, но строка не будет. Полезно, если вы всегда хотите ссылаться на одну и ту же строку в формуле. Например, если ваша формула находится в C1, и вы переместите ее на D2, теперь она будет ссылаться на B $ 1.
$A$1
- Это блокирует ссылку на ячейку. Независимо от того, как вы перетаскиваете формулы вокруг, он будет продолжать ссылаться на ячейку A1. Например, если ваша формула находится в C1, и вы переместите ее на D2, теперь она будет ссылаться на $ A $ 1.
Полезный пример: Постоянный множитель для всех чисел.
Диапазон Ссылка:
Из-за огромное количество комбинаций ссылок диапазона, я sicking к наиболее распространенным. Смешивание и сопоставление типов ссылок на ячейки с типами ссылок диапазона будут получать каждую комбинацию.
A1 Ссылки разбиты следующим образом:
Alphanumberic порции - Что столбец мы в числовой части - Что строку мы в $ - Запирание части сразу после
A1:B2
- Ссылки сетка ячеек с A1 находится в верхнем левом углу, а B2 - в правом нижнем углу. Обе части формулы будут скользить при перемещении. Обычно рекомендуется не иметь разблокированных ссылок в формулах, применяемых в отношении нескольких ячеек, поскольку диапазон ссылок также будет перемещаться. Например, если у вас есть = Sum (A1: B2) в C1, и вы переместите его на D2, он преобразуется в = Sum (B2: C3).
Разблокированные ссылки диапазона чаще всего вызывают проблемы в формулах vlookup, где диапазон ссылок заканчивается изменением, когда люди сдвигают формулу вниз.
$A$1:$B$2
- ссылки на сетку ячеек с A1 находится в верхнем левом углу, а B2 - внизу справа.Эта ссылка на диапазон не изменится, даже если она перемещена. Например, если у вас есть = Сумма ($ A $ 1: $ B $ 2) в C1, и вы переместите ее на D2, она преобразуется в = Сумма ($ A $ 1: $ B $ 2)
$A$1:A2
- Эти замки первой ячейки, но оставляет вторую часть эталонной гибкой. Это очень полезно, если вы хотите увидеть «Все, что произошло до сих пор» - например, если вы нумеруете список, в сочетании с =countifs
(«Какой экземпляр возникновения это один?») Например, если у вас есть = Sum ($ A $ 1: A2) в C1, и вы переместите его на D2, он преобразуется в = Сумма ($ A $ 1: B3)
Аналогичные эффекты могут использоваться с $A$1:B1
, идущими горизонтально.
A:A
- Это дает всю колонку A. Так как она разблокирована, она будет скользить. Полезно для захвата всего в данной колонке. Например, если у вас есть = Sum (A: A) в C1, и вы переместите его на D2, он преобразуется в = Сумма (B: B)
$A:A
- Это дает всю колонку A. Это будет расширяться когда вы переходите, чтобы захватить больше столбцов. Я не могу придумать для этого немедленное практическое применение. Например, если у вас есть = Sum ($ A: A) в C1, и вы переместите его на D2, он преобразуется в = Сумма ($ A: B)
$A:$A
- Это дает всю колонку A. Это блокируется в столбце A, даже если вы перемещаете формулы вокруг. Например, если вы имеете = СУММ ($ A: $ A) в С1, и вы переместить его в D2, он будет оставаться в виде = Сумма ($ A: $ A)
Чуть менее известны строки:
1:1
- Весь первый ряд. Разблокирована. Например, если у вас есть = Sum (1: 1) в C2, и вы переместите его на D3, он преобразуется в = Сумма (2: 2)
$1:1
- Вся первая строка. Частично заблокирован. Например, если у вас есть = Сумма ($ 1: 1) в C2, и вы переместите его на D3, он преобразуется в = Сумма ($ 1: 2)
$1:$1
- Вся первая строка. Полностью заблокирован. Например, если у вас есть = Сумма ($ 1: $ 1) в С2, и переместить его в D3, он будет оставаться в = Сумма ($ 1: $ 1)
R1C1 Ссылки
R1C1 является более стиль ссылки, а не стиль координат. Это может быть чрезвычайно полезно, так как ваши формулы во всех ваших ячейках выглядят одинаково и значительно облегчают ввод скользящих формул в VBA.
R1C2 разбивается, как, например:
R - Строки 1 - Ряд 1 ИЛИ [1] - Мы 1 строку вниз от нашей текущей ячейки C - Столбцы 1 - колонка 1 ИЛИ [1] - Мы находимся в 1 колонке от нашей текущей ячейки
Другими словами, если у вас нет скобок, вы ссылаетесь на ячейку или колонку, о которой идет речь. Если у вас есть скобки, у вас есть относительная ссылка.
Сотовой Литература:
R3C7
является абсолютной ссылкой - третья строка, седьмой столбец. Это будет то же самое, что сказать $G$3
в стиле A1, как описано выше.
R[3]C7
- частично абсолютная, частично относительная ссылка. Это требует «Дайте мне ячейку на 3 строки вниз от текущей ячейки, в столбце 7» (Которая является столбцом G) Если у меня есть это в ячейке A1, я буду ссылаться на ячейку G4. Если я переведу его на ячейку B2, я буду ссылаться на ячейку G5.
R[2]C[-2]
- полная относительная ссылка. Вы также можете ссылаться на предыдущие столбцы или строки, как указано знаком -
. Если бы у меня была эта формула в ячейке C1, это было бы ссылкой на ячейку A3. Если я переведу формулу на D2, теперь я буду ссылаться на ячейку B4.
ссылка Диапазона:
Таблица Ссылка
Таблица делает ссылки на другие клетки и диапазоны легко и интуитивно. Они разбиты следующим образом:
TableName [ColumnName]
Формула Ссылки
VBA Ссылки
VBA Преобразование из письма к колонке
то, что это приходят несколько раз, меняя номера столбцов на буквы столбцов. Я нашел этот очень полезный фрагмент кода (где-то в Stack Overflow, в настоящее время у меня нет ссылки), чтобы конвертировать номера столбцов в столбцы для удобства использования в VBA.
Function Col_Letter(lngCol As Long) As String
'Converts a number (usually generated from an application.match function) to a letter. For example 1 turns into A, 5 turns into E, etc.
Dim vArr
vArr = Split(Cells(1, lngCol).Address(True, False), "$")
Col_Letter = vArr(0)
End Function
********* Конструкция **********
- 1. Синтаксис диапазона VBA EXCEL
- 2. синтаксис диапазона списка Haskell
- 3. Excel VBA Копирование значений диапазона в массив,
- 4. VBA Excel: присвоение значений диапазона новому диапазону
- 5. Формула Excel: COUNTIF Функция для диапазона значений
- 6. Хост не найден (авторитетный)
- 7. Как получить список уникальных значений из диапазона в Excel VBA?
- 8. Excel - возврат значений из диапазона, начинающегося с первого непустого значения
- 9. Рассчитать сумму по мощности диапазона значений в excel?
- 10. EXCEL VBA - настройка динамического имени файла на основе значений диапазона
- 11. Поиск и удаление строк Excel на основе диапазона значений
- 12. Excel Macro или VBA для определения абсолютных значений диапазона
- 13. Использование диапазона значений ячеек Excel для запроса одиночного параметра ms
- 14. Excel: Count верхних значений% исключающих "0" нули из диапазона
- 15. Получение диапазона значений от excel с помощью PHPExcel
- 16. Как вернуть уникальное значение из диапазона значений Excel VBA
- 17. Копирование значений из диапазона в Excel в закладку Word
- 18. Авторитетный список тегов без TextNode
- 19. COUNTA для текущего диапазона Excel
- 20. Excel vba Диаграмма, редактирование диапазона
- 21. VBA: соответствие диапазона значений
- 22. Barplot: график диапазона значений
- 23. Установка диапазона значений (MySQL)
- 24. Элегантно «Сдвиг» значений диапазона
- 25. для диапазона значений петли
- 26. Установка значений диапазона с использованием другого диапазона
- 27. Excel 2010 - Поиск диапазона
- 28. Определение диапазона Excel
- 29. Ограничения диапазона проверки Excel
- 30. Excel диапазона, не увеличивая
вы также ищете примеры notatnion R1C1? – Marek
Также есть табличные ссылки на list_name [column], list_name [#Headers] [column]. Мне бы очень хотелось увидеть полный список, это гораздо больше, чем регулярное выражение R1C1. –
http://office.microsoft.com/en-us/excel-help/using-structured-references-with-excel- tables-HA010155686.aspx –