|
Public dic全局 As Object '声明全局变量,后期绑定
Sub 测试()
Call 全局字典初始化
Sheet9.[b3].Resize(1000) = ""
arr = Sheet9.[b1].CurrentRegion
For i = 3 To Cells(Rows.Count, "C").End(xlUp).Row
Cells(i, 2) = dic全局(Cells(i, 3) & "")
Next
End Sub
Function 全局字典初始化()
If Not dic全局 Is Nothing Then Exit Function '如果全局字典不为空就退出
Set dic全局 = CreateObject("scripting.dictionary")
Dim arr, i, key
arr = Sheet1.Range("a1:c" & Sheet1.Cells(Rows.Count, 3).End(xlUp).Row).Value
'源数据装入字典
For i = 3 To UBound(arr) '从第三行开始循环
key = arr(i, 3) & "" '关键字
dic全局(key) = arr(i, 2)
Next
End Function |
|