我使用下面的代碼從excel中的範圍創建一個集合,然後用它來填充用戶窗體上的列表框。代碼在兩個單獨的宏中一直工作正常,但突然都停止工作,並在標題中拋出錯誤。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)
這並不會引發錯誤,但列表框不具有唯一值填充,而不是它列出單元格範圍內的所有項目。
我已經看過其他文章在這個錯誤,但無法解決。任何人都可以建議如何解決,也有興趣爲什麼可能停止工作。
謝謝,但在我的情況下,這是錯誤捕獲設置如上 –