• ベストアンサー

コントロールの作成時にイベント処理を追加したい

Access2007のプログラム内で、CreateControlでコントロールを作成し、さらにクリックイベントを付けることは可能でしょうか? プログラム内の特定ファンクションを実行するクリックイベントを追加したいのですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

バフッとした例で良いですか。 テスト用の環境で、標準モジュールに以下を記述します。 (コピー、貼り付けでも) Public Function lblClick(iNum As Long)   MsgBox "Click : " & iNum End Function Public Sub Sample1()   Dim i As Long   With CreateForm     For i = 1 To 5       With CreateControl(.Name, acLabel, acDetail, , , _             567, 567 * i, 567 * 3, Int(567 * 0.5))         .Name = "lblBox" & i         .Caption = "lblBox" & i         .OnClick = "=lblClick(" & i & ")"       End With     Next   End With End Sub 上記 Sample1 を実行すると、 新規フォームにラベル5つがデザインモードで表示されているかと思います。 フォームビューにしてフォームを表示し、各ラベルをクリックしてみます。 クリックするとメッセージボックスが表示されます。 参考になる/ならない等、自己責任でお願いします。

amamaq
質問者

お礼

30246kikuさん お返事どうもありがとうございました。 OnClick もここで記述できたのですね、大変助かりました。

関連するQ&A