问题
I am trying to get Access VBA to copy one of its modules out to a folder - I have looked at the other threads / google and no joy - what do you think? Code below
Sub copy_out_module()
Set appAccess = New Access.Application
Set dbsCurr = appAccess.CurrentProject
Const ModulePath As String = "C:\Users\Sjohn\Documents\Components\"
dbsCurr.Item("Module2").Export ModulePath
End Sub
回答1:
Your last line dbsCurr.Item("Module2").Export ModulePath
can't run (Err. 438 Object can't admit property or method).
You can check this thread on StackOverflow: Export All Code.
I those sample code simple remmember to add the library Visual Basic for Application Extensibility. All code are perfect and only i add two lines for DIM some vars.
Sub ExportAllCode()
Dim c As Object
Dim sfx As String
For Each c In Application.VBE.VBProjects(1).VBComponents
Select Case c.Type
Case vbext_ct_ClassModule, vbext_ct_Document
sfx = ".cls"
Case vbext_ct_MSForm
sfx = ".frm"
Case vbext_ct_StdModule
sfx = ".bas"
Case Else
sfx = ""
End Select
If sfx <> "" Then
c.Export _
Filename:=CurrentProject.Path & "\" & _
c.Name & sfx
End If
Next c
End Sub
来源:https://stackoverflow.com/questions/27966671/vba-access-export-code-module-to-folder