Это не вопрос о сфере имен. Это вопрос определения ячеек в имени.

Представьте, что я создал имя =A1+B2 .

Это жестко запрограммировано Excel в Sheet1!A1+Sheet1!B2 . Но я не хочу, чтобы эти клетки были связаны с Sheet1 .

Я хочу использовать это имя на нескольких листах. Если я использую это имя в Sheet1, я хочу, чтобы имя было эквивалентно Sheet1!A1+Sheet1!B2 . Но если я использую это имя в Sheet2, я хочу, чтобы оно было эквивалентно Sheet2!A1+Sheet2!B2 .

Это возможно? Если так, то как?

1 ответ1

0

редактировать: это, вероятно, не будет работать с именованными диапазонами.

Вы можете использовать эту формулу (найдена на exteoffice.com), чтобы получить имя текущего листа (обратите внимание, что файл должен быть сохранен первым, это не будет работать на новой пустой книге):

=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)

Объедините это с INDIRECT чтобы получить значение A1:

=INDIRECT(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)&"!A1")

И тогда окончательная формула для объединения ваших A1 и B2:

=INDIRECT(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)&"!A1")+INDIRECT(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)&"!B2")

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