再简化一点: Sub 定向导入() Dim arr, i%, d, arrt, k% Set d = CreateObject("Scripting.Dictionary") arr = Sheets("当月数据源").Range("i2:m" & Sheets("当月数据源").[i65536].End(3).Row) For i = 1 To UBound(arr) d(Mid(arr(i, 4), 3, Len(arr(i, 4)) - 4)) = arr(i, 3) & "|" & arr(i, 5) Next With Sheets("数据库C") arrt = .UsedRange For k = 2 To UBound(arrt) If d.exists(arrt(k, 6)) Then arrt(k, 5) = Split(d(arrt(k, 6)), "|")(0) arrt(k, 7) = Split(d(arrt(k, 6)), "|")(1) End If Next .[a1].Resize(UBound(arrt), UBound(arrt, 2)) = arrt End With End Sub
[此贴子已经被作者于2010-12-14 20:13:05编辑过] |