クライアント情報を含むワークブックがあります。クライアントごとに 1 つのシートがあり、各シートにはクライアント固有の ID がラベル付けされています。ユーザーがコボ ボックスからクライアントを選択するユーザー フォームを起動したいと考えています。次に、適切なシートの最後の行のデータがユーザー フォームに入力されます。
同じワークブック内の他のコードでは、スクリプト ディクショナリを使用していますが、それらはすべて特定のシートの特定の範囲に関連付けられています。UserForm ですべてのシートを検索して cobo_ClientID フィールドの値と同じ名前のシートを見つけ、MAX の更新日を含む行から正しいデータ要素を取得する方法がわかりません。
以下は、私が他の分野で使用しているスクリプト ディクショナリの例です。
Set coboDict = CreateObject("Scripting.Dictionary")
With coboDict
For Each cStatsClientID In ws1.Range("StatsClientID")
If Not .exists(cStatsClientID.Value) Then
.Add cStatsClientID.Value, cStatsClientID.Row
Else
If CLng(cStatsClientID.Offset(, -2).Value) > CLng(ws1.Range("B" & .Item(cStatsClientID.Value))) Then
.Item(cStatsClientID.Value) = cStatsClientID.Row
End If
End If
Next cStatsClientID
Me.cobo_ClientID.List = Application.Transpose(.keys)
End With