我想在Excel中創建一個程序,它循環訪問Access數據庫列表並寫入Access模塊中存在的VBA。我發現了一些可以從Access中運行的代碼,它可以編寫Access模塊中存在的VBA。我想弄清楚如何從Excel引用數據庫文件並在每個數據庫文件上運行該程序。我可能會弄清楚如何循環訪問數據庫文件。我只需要在下面的代碼中引用數據庫文件的幫助。在Excel中運行VBA代碼以獲取Access數據庫中的VBA
我可以像這樣打開數據庫:
Dim cstrDbFile As String = "C:\Database51.accdb"
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell")
objShell.Run cstrDbFile
我還試圖建立一個基準像這樣訪問:
Dim appAccess As Object
Set appAccess = CreateObject("Access.Application")
appAccess.OpenCurrentDatabase ("C:\Database51.accdb")
我需要弄清楚如何引用在Access數據庫中:
Application.VBE.ActiveVBProject.VBComponents
我可能需要弄清楚如何創建一個引用re放置ActiveVBProject。
下面是我發現的一些代碼,它寫入了VBA模塊的內容。我不記得我在哪裏找到它。
For Each Component In Application.VBE.ActiveVBProject.VBComponents
With Component.CodeModule
'The Declarations
For Index = 1 To .CountOfDeclarationLines
Debug.Print .Lines(Index, 1)
Next Index
'The Procedures
For Index = .CountOfDeclarationLines + 1 To .CountOfLines
Debug.Print .Lines(Index, 1)
Next Index
End With
Next Component
VbComponent的導出方法比在每個模塊中循環每一行的速度快得多。 https://christopherjmcclellan.wordpress.com/2014/10/10/vba-and-git/ – RubberDuck 2014-12-07 14:02:21