выполнение макроса от дополнения

у меня есть дополнение, названное book1. в дополнении существует модуль, названный module1, который имеет sub, названный addin1

я хотел бы выполнить макрос addin1 от другой рабочей книги

я пытаюсь назвать этот макрос как это:

Call Addin1

но это не работает

и я попробовал:

Call book1.xlam.Module1.AddIn1

который не работает также

кто-либо знает, как выполнить макрос, который является в дополнении?

6
задан pnuts 9 February 2015 в 20:26
поделиться

3 ответа

(Предполагается Office 2007) Вот пример:

1- Откройте новую рабочую книгу.
2- Добавьте макрос, содержащий код MsgBox("Add-In")
3- Сохраните как xlam файл.
4- Откройте новую рабочую книгу.
5- Нажмите кнопку Office -> Параметры Excel
6- Нажмите вкладку Add-Ins слева.
7- Внизу, рядом с выпадающим меню "Управление", выберите "Надстройки Excel" и нажмите кнопку Перейти.
8- Нажмите "Обзор" и перейдите к файлу xlam.
9- Убедитесь, что флажок рядом с вашим файлом установлен, и нажмите Ok.
10- Нажмите кнопку Office -> Параметры Excel.
11- Щелкните вкладку Настроить.
12- Выберите Макросы в "Choose Commands From Dropdown."
. 13- Дважды щелкните по вашей AddIn, и теперь на панели инструментов быстрого доступа появится кнопка.
14- Нажмите на кнопку, и теперь появится окно сообщения.

17
ответ дан 8 December 2019 в 03:38
поделиться

В рабочей книге вы пишете:

Sub test() 
    ' from other excel file
    Application.Run ("youraddin.xla!ShowForm") 
End Sub

А в дополнении у вас

Public Sub ShowForm() 
    loginform.Show 
End Sub 
6
ответ дан 8 December 2019 в 03:38
поделиться

Я думаю, это то, что вы ищете :) Вам понадобятся одинарные кавычки и! в нужных местах может быть немного сложно.

run "'book1'!module1"
2
ответ дан 8 December 2019 в 03:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: