2015-08-05 3 views
1

Я пытаюсь автоматически добавить ссылку во время работы под. Но я получаю «Определенный пользователем тип» для проект Как VBAProject Что случилось?Добавление ссылки на VBA

Sub tester() 

    Dim SolverPath As String 
    SolverPath = Application.LibraryPath & "\SOLVER\SOLVER.XLA" 

    Dim wb As Workbook 
    Set wb = ThisWorkbook 

    Dim project As VBAProject 
    project = wb.VBProject 

    wb.project.References.AddFromFile SolverPath 

End Sub 
+0

См. Здесь. http://stackoverflow.com/questions/9879825/how-to-add-a-reference-programmatically-in-excel-vba – MatthewD

ответ

0

VBAProject на самом деле специальный тип библиотеки, а не тип переменной. Если вы нажмете F2, чтобы открыть браузер объектов, вы можете выбрать его из раскрывающегося списка библиотеки. Таким образом, вы не можете создавать переменные типа VBAProject. Однако это необязательно и для ThisWorkbook, если только вы не хотите использовать более короткий псевдоним. Просто используйте свойство рабочей книги VBProject, чтобы получить доступ к текущему экземпляру проекта и добавить/удалить компоненты. Ваш код может быть упрощен до:

Sub tester() 

    Dim SolverPath As String 
    SolverPath = Application.LibraryPath & "\SOLVER\SOLVER.XLA" 

    ThisWorkbook.VBProject.References.AddFromFile SolverPath 

End Sub 
Смежные вопросы