Всем доброго времени суток!
Я продолжаю при помощи макрорекордера и гугла ваять макросы, но получается так себе.
Итак, есть у меня Excel - книга с 15-20 листами, на которых находятся одинаковые по структуре таблицы. Так
же штук 5 скрытых листов (их изменять не нужно) и обязательно один лист, в названии которого содержится слово "ОТСТОЙ" (этот лист тоже трогать не надо). Таких книг около 20 штук.
Изначально в ячейках листов, в двенадцати определённых столбцах (порядок столбцов на всех листах один и тот же) находятся длиннющие ссылки на другой файл в имени которого содержится слово "январь". Каждый месяц на диске появляется новый файл с данными (в его названии будет стоять "февраль", "март"....) и соответственно нужно проводить замену ссылок: менять "январь" на "февраль", "январь" на "март" и т.д.
Макрос я почти написал, только вот ведь незадача он не срабатывает (. Код макроса прилагаю отдельным файлом. Основная идея:
1. Пользователем вводится порядковый номер месяца
1а. Создаётся массив из 12 названий месяцев.
2. По этому порядковому номеру из массива выбирается соответствующее название месяца.
3. Создаётся массив-адресов столбцов (эти адреса одинаковые на всех листах, кроме скрытых).
3а. Если пользователь ввёл 1, то из массива stolbi() выбирается первый элемент (это диапазон "BE:BE"). Если ввёл цифру 2, то из
массива stolbi() выбирается второй элемент (это диапазон "BF:BF") и т.д. Соответственно ссылки нужно изменить на всех листах (кроме скрытых и ОТСТОЙ) в выбранном диапазоне.
4. Запускаю цикл, который пробегается по всем листам активной книги и если они не являются скрытыми и не содержат в своём названии "ОТСТОЙ", то в соответствующих столбцах(из пункта 3а) в ячейках содержащих ссылки, в самих ссылках изменяются названия месяцев.
На пункте 4 всё запарывается. Почему-то не срабатывает цикл и макрос проводит замену только на том листе, с которого был запущен.
Более того,если я его запущу с листа с названием "blablabla- ОТСТОЙ", то он и там пытается замену делать!
Подскажите пожалуйста, как нужно правильно написать код, чтобы макрос заработал так как задумывалось?
P.S. В силу независящих от меня обстоятельств саму книгу Эксель приложить не могу.
Прошу понять и простить.