成语大全网 - 汉语词典 - vba怎么通过字典的key来确定数据?

vba怎么通过字典的key来确定数据?

不要使用对象作为KEY,应该使用简单类型,判断存在的方法是Exists,最好使用赋值语句代替.Add,可以避免重复导致的问题。修改后的代码:

Option?Explicit

Sub?dic()

Dim?d,?i%,?j%,?temp

Dim?k,?v

Set?d?=?CreateObject("Scripting.Dictionary")

For?i?=?1?To?Sheet1.[a66].End(3).Row

k?=?Trim(Sheet1.Cells(i,?1))

v?=?Sheet1.Cells(i,?2).Value

d(k)?=?v

Next?i

For?j?=?1?To?Sheet2.[a66].End(3).Row

k?=?Trim(Sheet2.Cells(j,?1))

If?d.Exists(k)?Then

Sheet2.Cells(j,?2).Value?=?d(k)

End?If

Next

End?Sub