Новости:

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

Главное меню

перенос макросов в новую книгу

Автор vitorian, 16.05.2012, 01:52

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

vitorian

Добрый день.
Проблема такая. Из книги, каждый лист которой содержит несколько кнопок и макросы их обслуживающие, необходимо программным образом копировать некоторые из листов в новую книгу. Однако после копировния, макросы ссылаются не на новую книку, а на ту, из которой их скопировали (хотя внутри содержится свой такой же.
Вопрос: Как этого избежать? как (программно) разорвать связи.
Такая же проблема есть если  копировать листы содержащие формулы, ссылающиеся на диапазоны соседних листов. например формула из книги A.xls =ВПР(Лист1!А1;В1:В15;1;1=2) в новой книге, после копирования листа превратится в ВПР([c:\a.xls]Лист1!А1;В1:В15;1;1=2). Я ее обхожу так: пишу формулу =ВПР( ДВССЫЛ("Лист1!А1");В1:В15;1;1=2) которая переносится без изменений. Но с макросами привязанными к кнопкам так не получается. :(


vitorian

#2
Цитата: Kiselev_Y от 16.05.2012, 10:26
https://forum.msexcel.ru/microsoft_excel/skopirovat_list_s_formulami_iz_odnoy_knigi_v_druguyu-t560.0.html
Все правильно, здесь приводится описание моего решения с ДВССЫЛ приведенное выше.
Вопрос же был о другом.
Но все равно спасибо тем кто откликнулся. Решение нашлось и оно такое:
Вместо стандартный кнопок с панели элементов управления, использовать кнопки activX. Код свех элементов управления инкапсулируется в лист. и не требует дополнительной настройки на имя макроса.

Тема закрыта. Всем спасибо