Попытка переименовать модуль после ошибки импорта 7874 не может найти объект module1 - PullRequest
0 голосов
/ 26 марта 2019

Я пытаюсь импортировать экспортированные объекты из другой базы данных. Расширение файла vba. Я создал цикл, чтобы пройти все объекты. Мой цикл проходит все файлы правильно. Цикл импортирует модуль как Модуль 1 для первого файла. Я хочу переименовать модуль из модуля 1 в предыдущее имя модуля.

Я работаю с MS Access office 365.

Sub LoopThroughFiles2()
    Dim strFile As String
    Dim strNewFile As String
    Dim strPath As String
    Dim strNewPath As String
    Dim strDBName As String
    Dim strModName As String

    strDBName = Application.CurrentProject.Name
    strPath = ("C:\Users\Parents\Google Drive\Access Files\File7\")
    strFile = Dir(strPath & "*")
    Do While Len(strFile) > 0
        Debug.Print strFile
        Debug.Print strPath

        strNewFile = Replace(strFile, ".vba", ".txt", 1, , vbTextCompare)
        Debug.Print strNewFile

        Name strPath & strFile As strPath & strNewFile
        strNewPath = strPath & strFile
        strModName = Replace(strNewFile, ".txt", "")
        Debug.Print strModName
        VBE.ActiveVBProject.VBComponents.Import strNewPath
        VBProj.VBComponents("Module 1").Name = strModName 'error 424 
        DoCmd.Rename strModName, acModule, "Module1" 'error 7874

    Loop
End Sub

1 Ответ

0 голосов
/ 26 марта 2019

Вы не можете изменить имя напрямую, но вместо этого вы можете изменить свойство, например:

VBE.ActiveVBProject.VBComponents("Module 1").Properties("Name").Value = strModName
...