Ссылки на ячейки можно создавать программно, используя комбинацию функций concatenate(), text() и indirect() с некоторой числовой формулой. Это работает хорошо, но может сделать формулу вызова переполненной и неуклюжей. Это также предотвращает автоматическое обновление адреса указанной ячейки при перемещении (перетаскивании) целевой ячейки в таблице.
Например, сделаем ячейку равной B2:
=INDIRECT(CONCATENATE("B", TEXT(3-1,"0")))
3-1
приведено для наглядности - фактическая формула сложнее
Есть ли способ создать ссылку более напрямую, т.е. без перехода к области манипуляции ТЕКСТОМ, что-то вроде:
=("B"):(3-1)
И при этом также сохранить автоматическую ссылку на перемещенную ячейку B1?
решение1
Не уверен, поможет ли это, но я бы также предложил использовать функцию СМЕЩ.
OFFSET(cell reference, rows, cols [, height [, width]])
например, вы можете использовать =OFFSET(B3,-1,0)
и ссылка на ячейку будет обновляться по мере перемещения ваших данных
решение2
Ваш пример полностью эквивалентен
=INDIRECT("B"&(3-1))
решение3
Вы можете использовать INDEX, который обновится, если вы его перетащите, например
=INDEX(B:B,3-1)
перетащите его, и он изменится на C:C, D:D и т. д.