Запуск VBA к югу от Excel в Access VBA - PullRequest
0 голосов
/ 24 мая 2019

Я думаю, что к этому моменту я уже прочитал все, что есть в моем вопросе, и ничто не решает мою проблему.

Мне нужно запустить код VBA, вложенный в большой Excel, который имеет много листов. Этот макрос должен подготовить мне таблицы и скрыт под кнопкой. Находится на листе «Процесс».

В Access VBA я использовал этот код, чтобы открыть и запустить этот код Excel vba:

Dim fd As FileDialog, fileName As String

    Set fd = Application.FileDialog(msoFileDialogFilePicker)

    fd.AllowMultiSelect = False

    If fd.Show = True Then
        If fd.SelectedItems(1) <> vbNullString Then
            fileName = fd.SelectedItems(1)
        End If
    Else
        'Exit code if no file is selected
        End
    End If

    selectFile = fileName

    Dim appExcel As Excel.Application
    Dim myWorkbook As Excel.Workbook

    ' variables needed to open the macro in Excel
    Const MODULE_NAME As String = "Extraction_BDD"
    Const PROC_NAME As String = "extracteur"
    Dim appExcelMacro As String

    Set appExcel = CreateObject("Excel.Application")  
    Set myWorkbook = appExcel.Workbooks.Open(selectFile, True, False)

    appExcel.Visible = True
    Set appExcel = Nothing
    Set myWorkbook = Nothing
    ClasseurName = ActiveWorkbook.Name

    ' builds the string to send to Excel.Run method:
    appExcelMacro = ClasseurName & "!" & MODULE_NAME '& "." & PROC_NAME    
    appExcel.Run (appExcelMacro)

    ' Close workbook and save changes
    Workbooks(ClasseurName).Close SaveChanges:=False

End Sub

Эта команда "appExcel.Run (appExcelMacro)" должна выполнить работу, но ничего не делает. Я продолжаю получать ошибки, говоря:

"Ошибка времени выполнения" 1004 ":

Невозможно запустить макрос "MyWorkbook! Module_3.extracteur". Макрос может быть недоступен в этой книге или все макросы могут быть отключены "

Что не так, потому что там включен в Excel. И макрос работает хорошо после нажатия кнопки в Excel.

Итак, что я делаю не так? Где взломать?

1 Ответ

0 голосов
/ 24 мая 2019

Я нашел решение. Невозможно запустить макрос ... макрос может быть недоступен в этой книге

Пробелы в имени файла вызывали проблему.

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