バインドされたコンボボックス(つまり、cboTest)を持つ2つのフォーム(つまりfrmTest)があります。私は、これらのフォーム(つまり、btnTest_Click)のボタンクリックサブを呼び出すpublicサブによってNotInListイベントを解決しようとしています。モジュールからのプライベートサブ呼び出し、連結参照
フォームfrmTestを:
Private Sub cboTest_NotInList(NewData As String, Response As Integer)
Response = acDataErrContinue
Item_NotInList NewData, Me, "btnTest"
End Sub
Public Sub btnTest_Click
'....
End sub
モジュール:
Public strNotInList_Text As String
'public variable to store entered text
Public Sub Item_NotInList (strNewData As string, frmForm As Form, strControl As String)
Dim strControl_Sub As String
strNotInList_Text = strNewData
strControl_Sub = "." & strControl & "_Click"
Application.Run frmForm.Name & strControl_Sub
End Sub
Accesのは、 "手順frmTest.btnTest_Clickが見つかりませんでした...プログラム。" というエラーを返します。
なぜですか?
参照frmTest.btnTest_Clickが正しいように見えます。サブbtnTest_Clickはパブリックとして宣言されています。
ありがとうございました。
フォーム内に 'btnTest_Click'を格納しないで、モジュール(' btnTestClick')に保存し、 'Sub btnTest_Click()\\ btnTestClick \\ End Sub'を使ってテストボタンから呼び出してください。 – Wolfie
ありがとうございました。しかし、btn ... _さまざまなフォームのClick Subは、さまざまな手順を処理しています。だからこそ私はbtnを使っています... _フォームのsubsをクリックします。 – Duski
実行するだけでは実行できません。フォームを格納したパブリックオブジェクト変数を使用して、そのメソッドを直接呼び出すか、ルーチンをPublicにして、それを呼び出すために 'CallByName'を使用することができます。私はこの設定に何かメリットがあるとは言えません。 – Rory