У меня есть массив, называемый flArr, и я переношу его в словарь и проверяя элементы из другого массива, если существует, то я добавляю его в список, но я не знаю, как-то он не работает, давая мне "объект требуемой ". Есть идеи?.Словарь VBA, если существует?
Set dic_cc = CreateObject("scripting.dictionary")
dic_cc = flArr 'transferring array to dictionary
For Each f In heArr 'another array heArr
If dic_cc.Exists(f) Then Me.FilterList.AddItem f
Next
Благодаря
Вы не можете присвоить массив в словарь, как что - вам нужно перебрать массив и добавить элементы один за другим. –
да, я могу. Я могу зациклиться на dugh_cc и увидеть все элементы этого массива. У меня есть только проблема в этой строке. Если dic_cc.Exists (f) Then Me.FilterList.AddItem f – Shan
Нет, вы не можете. Попробуйте объявить dic_cc 'As Object' и посмотреть, что произойдет. То, что вы делаете в своем текущем коде, присваивает переменной 'dic_cc' массиву' flArr' - в этот момент он перестает быть объектом Dictionary и становится массивом. Это работает только в том случае, если вы объявляете dic_cc как Variant (или, по крайней мере, не как «Object»). –