0
我一直在Excel中使用VBA,最近開始使用Scripting.Dictionary對象。直到今天,我還沒遇到任何重大問題。Scripting.Dictionary鍵列表框VBA Excel
基本上我試圖填充一個字典的鍵值列表框,然後再向列表框添加一個值。這會導致該值不僅被添加到列表框中,而且還被作爲關鍵字添加到字典中。我試圖將dict.keys()數組中的值複製到一個完全獨立的數組中,但仍然存在相同的問題。我認爲這是一個byref問題,但尚未找出解決方案。如果任何人有任何想法,真棒。
Private Sub Setup_settingLst()
'Set Settings listbox items
'On Error GoTo ErrorExit
Dim list_ary() As Variant
Dim tmp As Variant
Dim i As Integer
settingLst.Clear
settingLst.Value = "-Select Setting-"
i = 0
tmp = tmp_dict.Keys()
If tmp_dict.Count > 1 Then
ReDim list_ary(0 To tmp_dict.Count)
For i = 0 To UBound(tmp)
list_ary(i) = tmp(i)
Next i
list_ary(tmp_dict.Count) = "Back"
Else
ReDim list_ary(0 To tmp_dict.Count - 1)
For i = 0 To UBound(tmp)
list_ary(i) = tmp(i)
Next i
End If
settingLst.List = list_ary
Erase list_ary
Exit Sub
ErrorExit:
End Sub
試圖重新您的問題,但代碼似乎對我的工作確定。請發佈其餘的代碼,包括如何聲明和填充'tmp_Dict',以及如何調用'Setup_settingLst',因爲這可能會影響問題。 – 2013-05-13 05:54:03