実行時にテキストボックスを作成するExcelユーザーフォームがあります。次のようにコーディングします。
Dim CompHandler() As New CCompHandler
Dim tb As MSForms.TextBox
Dim count As Integer
For i in Range(something)
If i = anotherthing Then
Set tb = UserForm1.Controls.Add("Forms.TextBox.1", "tb" & count)
With tb
.Width = iTbWidth
.Top = count * distance
.Left = iTbLeft
.Height = iTbHeight
.Value = Cells(row, column)
ReDim Preserve CompHandler(0 To count)
Set CompHandler(count).TextBoxGroup = tb
End With
count = count + 1
End If
Next i
変更した値を対応するセルに書き戻したい。ボックスが変更されたとき、およびこのコードを使用して新しい値を取得することは、すでに可能ですclass called CCompHandler
。
Option Explicit
Public WithEvents TextBoxGroup As MSForms.TextBox
Private Sub TextBoxGroup_Change()
MsgBox TextBoxGroup
End Sub
では、どのテキストボックスが変更されたかをどのように取得できるかについてのアイデアはありますか?それとも、それを行うためのより良い方法はありますか?前もって感謝します