VBA / Excel - 2007
Я хочу создать один (возможно, много) файл .xlam для хранения общих модулей, доступных для разных проектов.По пути я получил ряд ошибок, но благодаря созданию сценария «микки-маус» я свел его к одному условию ошибки (как показано в реальном результате): -
Я видел несколькоописанные здесь проблемы, связанные с этим, которые в итоге либо не были решены, либо решение не достигло цели
В качестве предвестника этого я смог поместить свой общий модуль в другой проект .xlsm и успешновыполнить его, используя ссылку на этот вызываемый проект.Однако было бы предпочтительнее не создавать рабочую книгу для единственной цели размещения общих модулей
'Caller VBAProject (Caller.xlsm):
Public Sub Caller()
Dim i As Integer
i = 0
'*** Error in line below***
Application.Run "C:\Users\IT\AppData\Roaming\Microsoft\AddIns\Common.xlam!Test", i
End Sub
' Called Test (Common.xlam)- другой проект, очевидно
Function Test(ByRef i As Integer) As Boolean
If i = 0 Then
Test = False
Else
Test = True
End If
End Function
Фактический результат
Ошибка времени выполнения '1004':
Невозможно запустить макрос
'C:\ Users \ IT \ AppData \ Roaming \ Mirosoft \ AddIns \ Common.xlam! Test 'Макрос может быть недоступен в этой книге или все макросы могут быть отключены.
Выполненные шаги (в настройках Excel)
Центр управления безопасностью
a) Настройки макросов - и i), и ii) (в разное время)
i) Disabled all macros with notification
ii) Enabled all macros
iii) set Trust access to the VBA project object model
b) Надстройки -- оставлено как значение по умолчанию, т.е. никакие опции не отмечены
c) Надежные местоположения - добавлено следующее C: \ Users \ IT \ AppData \ Roaming \ Microsoft \ AddIns \
Надстройки
В качестве активной надстройки приложения у меня есть
C:\Users\IT\AppData\Roaming\Microsoft\AddIns\Common.xlam
Может кто-нибудь сказать, что я пропустил?