次のコードを使用してexcelの範囲からコレクションを作成し、ユーザーフォームのリストボックスを作成するために使用します。コードは2つの別々のマクロで何ヶ月もうまく動作していましたが、突然両方の動作が停止し、タイトルにエラーがスローされました。VBAエラー:このキーは既にこのコレクションの要素に関連付けられています
Private Sub UserForm_Initialize()
Dim ws As Worksheet
Dim LR As Long
Dim cell As Range
Dim List As New Collection
Dim Item As Variant
Set ws = Worksheets("ExpenseCATs")
With ws
LR = .Cells(.Rows.Count, 1).End(xlUp).Row
For Each cell In .Range("A2:A" & LR)
With cell
On Error Resume Next
List.Add .Text, CStr(.Value) <---------- Error
On Error GoTo 0
End With
Next cell
For Each Item In List
EXPListBox1.AddItem Item
Next Item
End With
すべてのエントリがテキストであるため、私は
List.Add .Text ', CStr(.Value)
以下のようなエラーラインの一部をコメントアウトこれはエラーをスローしませんが、リストボックスには、一意の値を移入しない、代わりにそれを示していますセル範囲内のすべての項目。
このエラーで他の投稿を見ましたが解決できませんでした。どのように修正する方法をアドバイスすることができますか、なぜ興味を持っているのか興味があります。 VBAプロジェクトで
私のケースでは、上記のように設定をトラッピングするのがエラーでした –