Я написал код для таблицы Excel. Этот элемент был добавлен на ленту с использованием стандартных настроек, которые можно найти в меню «Файл» -> «Параметры» -> «Настроить ленту». Что забавно, так это то, что настройка запустит Sub на ТОЧНОМ ФАЙЛЕ EXCEL, в котором написан Sub, то есть на оригинале.
Мои пользователи копируют файл Excel и вносят коррективы, а затем запускают подпрограмму (нажав настраиваемую кнопку на ленте), которая затем открывает ИСХОДНЫЙ файл шаблона и запускает код. На самом деле это работает отлично, и мне это нравится, потому что он запускает код ШАБЛОНА на АКТИВНОМ листе. Но единственная проблема в том, что он также ОТКРЫВАЕТ исходный файл шаблона. Как заставить его закрыться? Помните, что это больше не ActiveSheet.
Один из возможных ответов — проверить, открыт ли шаблон, а затем закрыть его (используя статическую ссылку), но я бы предпочел что-то более элегантное.
RunMacroвместоMyWorkbook.xlsm!RunMacroв исходной книге? - person shahkalpeshp   schedule 06.01.2013