0

アクセスの内部モジュールに移動して新しいモジュールを作成し、その中に関数を配置できます。

VB6アプリケーションから実行時にこれを行うにはどうすればよいですか?

CREATE FUNCTION .. CREATE PROCEDURE ..を試しましたが、これは実際にはAccess 2000データベースであり、おそらくそれをサポートしていないという側面もあるかもしれません。

4

1 に答える 1

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
于 2013-03-09T08:24:05.073 に答える