1 各フォームの同じ機能のボタンの処理を共通化したい
clsButtonProcessing(クラスモジュール)
Option Compare Database
Option Explicit
Private WithEvents btn As CommandButton
Public Property Let Button(ByVal obj As CommandButton)
Set btn = obj
btn.OnClick = “[EVENT PROCEDURE]”
→ ①Onのついたイベントを選ぶ
②[EVENT PROCEDURE]を記載
End Property
Private Sub btn_Click()
ここにボタンをクリックしたときの処理を記載
MsgBox btn.Caption など
ちなみに使用中のフォームは、Screen.ActiveForm.Nameで特定できる。
End Sub
各フォームに記載
Private cls() As New clsButtonProcessing
Private Sub Form_Load()
Dim c As Object
ReDim cls(0)
For Each c In Me.Controls
If TypeName(c) = “CommandButton” Then
ReDim Preserve cls(UBound(cls) + 1)
cls(UBound(cls)).Button = c
End If
Next c
End Sub








