在 Access 内部,我可以进入 Modules 并创建一个新模块并将一个函数放入其中。
如何在运行时从 VB6 应用程序执行此操作?
我已经尝试过 CREATE FUNCTION .. CREATE PROCEDURE .. 但我也可能有一个方面实际上是一个 Access 2000 数据库,它可能不支持它。
我只能在 Access 97 中找到执行此操作的代码
Sub CreateNewModule()
Dim MyMod As Module
Dim MyStr As String
DoCmd.RunCommand acCmdNewObjectModule ' Create new module.
MyStr = "Sub Test2()" & vbCrLf ' Create text for the module.
MyStr = MyStr & Space$(4) & "MsgBox " & Chr$(34) & "test2" & _
Chr$(34) & vbCrLf
MyStr = MyStr & "End Sub"
Set MyMod = Modules("Module3") ' Give module a name.
MyMod.InsertText MyStr ' Insert text into the module.
DoCmd.Close acModule, "Module3", acSaveYes ' Close and save module.
End Sub
就从 VB6 执行此操作而言,您需要使用自动化,然后像DoCmd
并且Modules()
应该可用的功能。
例如,像这样(未经测试)的东西应该让你开始。
Dim oApp As Object
Set oApp = CreateObject("Access.Application")
oApp.OpenCurrentDatabase "C:\MyDatabase.mdb"
oApp.DoCmd.RunCommand acCmdNewObjectModule
...
... (Rest of code to automate Access here)
...
Set oApp = Nothing