Новости:

Прикрепить к сообщению можно только файлы xls, gif, jpg, rar, zip,7z, bas, frm, cls, doc размером до 150 Кб.

Главное меню

Автоматическое изменение названия листа в формуле

Автор talanius, 06.12.2013, 09:33

« назад - далее »

talanius

Добрый день.
Помогите пожалуйста решить такую задачку:

имеется книга с в которой 31 лист(по числу дней в месяце)
листы обзываются соответственно 01, 02, 03, ... , 30, 31
в каждом листе (кроме первого) имеется группа ячеек, берущих значения из предыдущего листа,
т.е. в листе 02 допустим имеются ячейки со значениями ='01'!A2, ='01'!В2, ='01'!С2 ...
а в листе 03 имеются ячейки со значениями ='02'!A2, ='02'!В2, ='02'!С2 ...
и т.д.

можно ли как-нибудь прописать в ячейках вместо названия конкретного листа, формулу типа  '("текущий лист"-1)'!A2 ?

т.е., как я понимаю, необходимо взять название текущего листа, преобразовать его в число, отнять единицу, преобразовать обратно в текст и подсунуть в ссылку на ячейку как название листа.
Или может есть более изящный способ?
Помогите пожалуйста.

cheshiki1


ShAM

#2
Не знаю на сколько изящно:
=ДВССЫЛ("'"&ТЕКСТ(ПСТР(ЯЧЕЙКА("filename";A1);ПОИСК("]";ЯЧЕЙКА("filename";A1))+1;2)-1;"00")&"'!A2")

Или, чтобы можно было протягивать вправо:
=ДВССЫЛ("'"&ТЕКСТ(ПСТР(ЯЧЕЙКА("filename";A1);ПОИСК("]";ЯЧЕЙКА("filename";A1))+1;2)-1;"00")&"'!"&АДРЕС(2;СТОЛБЕЦ(A1)))