Inside Access我可以进入模块并创建一个新模块并在其中放置一个函数。
如何在运行时从VB6应用程序执行此操作?
我已经尝试过CREATE FUNCTION .. CREATE PROCEDURE ..但我可能也有一个方面,这实际上是一个Access 2000数据库,可能不支持。
答案 0 :(得分:1)
我只能在Access 97 here
中找到执行此操作的代码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