在运行时从VB6应用程序创建/附加Access数据库中的模块

时间:2013-03-09 04:18:38

标签: ms-access vb6 module

Inside Access我可以进入模块并创建一个新模块并在其中放置一个函数。

如何在运行时从VB6应用程序执行此操作?

我已经尝试过CREATE FUNCTION .. CREATE PROCEDURE ..但我可能也有一个方面,这实际上是一个Access 2000数据库,可能不支持。

1 个答案:

答案 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执行此操作而言,您需要使用自动化,然后应该使用DoCmdModules()等函数。

例如,像这样的事情(未经测试)应该让你开始。

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