4

Ссылки на ячейки могут быть построены программно с использованием комбинации функций concatenate(), text() и косвенного () с некоторой числовой формулой. Это прекрасно работает, но может заставить формулу вызова выглядеть многолюдно и неуклюже. Это также предотвращает автоматическое обновление указанного адреса ячейки при перемещении целевой ячейки в электронной таблице.

Например, сделайте ячейку равной B2:

=INDIRECT(CONCATENATE("B", TEXT(3-1,"0")))

3-1 для иллюстративных целей - фактическая формула является более сложной

Есть ли способ создать ссылку более напрямую, т.е. без перехода в домен манипуляции TEXT, что-то вроде:

=("B"):(3-1)

И этим также сохранить автоматическую ссылку на перемещенную ячейку B1?

3 ответа3

7

Ваш пример прямо эквивалентен

=INDIRECT("B"&(3-1))
3

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

OFFSET(cell reference, rows, cols [, height [, width]])

Например, вы можете использовать =OFFSET(B3,-1,0) и ссылка на ячейку будет обновляться при перемещении ваших данных

1

Вы можете использовать INDEX, который будет обновляться при перетаскивании, например

=INDEX(B:B,3-1)

перетащите его, и он изменится на C:C, D:D и т. д.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .