Excel VBA - вызов макроса с использованием надстройки - PullRequest
0 голосов
/ 22 февраля 2012

Я добавил меню панели инструментов для своего макроса, чтобы я мог просто нажать кнопку, и он запускает мой макрос из любого документа Excel. Каждый раз, когда я запускаю макрос, он открывает исходный файл, содержащий макрос. Есть ли способ, что он не будет открывать исходный файл и просто запустить макрос? (даже открытие и закрытие не будет большой проблемой, но я бы предпочел не открывать его вообще)

Я не смог найти никакой информации об этом, поэтому вся помощь, чтобы начать меня, приветствуется.

Ответы [ 2 ]

3 голосов
/ 22 февраля 2012

Вы не можете вытащить код из воздуха, чтобы запустить его; В Excel нужно будет открыть файл, в котором хранится код, чтобы запустить код.

Если я правильно понимаю, вы можете создать надстройку Excel из своего кода и автоматически загружать надстройку при запуске Excel. Ваш код всегда будет доступен в этом случае.

Это хорошее место для начала:

http://msdn.microsoft.com/en-us/library/aa140990(v=office.10).aspx

2 голосов
/ 22 февраля 2012

ИСПОЛЬЗУЙТЕ СВОЙ ЛИЧНЫЙ РАБОЧИЙ МАКРО

Откройте VBEditor и найдите модуль, содержащий ваш макрос.
Скопируйте этот код.

Теперь на панели VBProject слева найдите ваш проект PERSONAL.XLS или PERSONAL.XLSB. Это проект, в котором вы храните макросы, которые хотите, чтобы они были доступны в любое время. Добавьте модуль в этот проект и вставьте в него свой код.

Теперь обновите вашу «кнопку», чтобы она указывала на макрос в этой книге, и все готово.

На случай, если ваш проект PERSONAL.XLS не существует, используйте рекордер макросов для записи макроса «мусор» и обязательно установите для него «Store Macro In: Personal Macro Workbook» ... который создаст его для тебя в первый раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...