0

在 Access 内部,我可以进入 Modules 并创建一个新模块并将一个函数放入其中。

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

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

4

1 回答 1

1

我只能在 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
于 2013-03-09T08:24:05.073 回答