Excel ненавидит определенное имя для формулы, ссылающейся на одну и ту же строку в формате таблицы, например [@ [TableColumnName]] - PullRequest
0 голосов
/ 14 сентября 2018

Когда я пытаюсь создать определенное имя (формулы> Определенное имя> Диспетчер имен> и т. Д.), Представляющее локальную или ту же строку в таблице, например, = [@ [TableColumnName]], Excel не разрешит мне, говорит: «Синтаксис имени неверен».

Я методом проб и ошибок знаю, что проблема в моем окне «Относится к», а не в имени определенного имени (как следует из приведенного выше сообщения об ошибке).

Однако мне нужно включить ссылку на поля в той же строке таблицы, что и текущее в определенном имени, чтобы сократить мои формулы. Какой лучший способ? Есть ли альтернативные обозначения?

Почему? Я пытаюсь сократить свои формулы массива Excel до <255 символов, чтобы они могли быть размещены программно в VBA с помощью Range.FormulaArray. </p>

1 Ответ

0 голосов
/ 14 сентября 2018

Я не думаю, что вы можете использовать структурированную ссылку для определенной формулы имени, подобной этой.

Попробуйте:

=INDEX(Table1[#All],ROW(),1)

, где индекс столбца 1 - это тот же столбецкак [TableColumnName].Если расположение этого столбца может быть переменным, используйте:

 =INDEX(Table1[#All],ROW(),MATCH("TableColumnName",Table1[#Headers],0))

И, если таблица может начинаться с строки, отличной от строки 1 (это, вероятно, наиболее адаптируется к различным типам конфигураций данных):

=INDEX(Table1[#All],ROW()-ROW(Table1[#Headers])+1,MATCH("TableColumnName",Table1[#Headers],0))
...