2015-01-15 65 views
-1

我想获得访问VBA将其模块之一复制到一个文件夹 - 我看了其他线程/谷歌和没有喜悦 - 你怎么看?下面VBA访问导出代码模块到文件夹

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 
+0

的可能的复制[导出MS Access表单和类/模块递归到文本文件?] [1] [1]:http://stackoverflow.com/questions/16948215/exporting-ms-access-forms-and-class-modules-recursively-to-text-files – ignotus 2015-01-15 16:16:13

回答

1

你的最后一行dbsCurr.Item("Module2").Export ModulePath代码无法运行(ERR 438对象不能承认属性或方法)。

您可以在StackOverflow上检查此线程:Export All Code

我那些示例代码简单的remmember添加库Visual Basic的应用程序扩展性。所有的代码都是完美的,只有我为DIM增加了两条线。

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

+0

所以我之前遇到过这样的代码 - 似乎没有做任何事情.... – 2015-01-19 09:37:43