|
Sub Macro1()
On Error Resume Next
Dim arr, brr, crr, drr, d, d2, i&, j%, n&
Set d = CreateObject("scripting.dictionary")
Set d2 = CreateObject("scripting.dictionary")
arr = Sheets("模版1").Range("a1").CurrentRegion
brr = Sheets("模版2").Range("a1").CurrentRegion
Sheets("转换").Select
[b:bet].ClearContents
crr = Range("a1").CurrentRegion
ReDim drr(1 To UBound(crr), 1 To UBound(brr, 2))
For i = 1 To UBound(arr)
d("" & arr(i, 1)) = "" & arr(i, 2)
Next
For i = 1 To UBound(brr)
d2("" & brr(i, 1)) = i
Next
For i = 1 To UBound(crr)
n = d2(d("" & crr(i, 1)))
For j = 1 To UBound(brr, 2)
drr(i, j) = brr(n, j)
Next
Next
[b:bet].NumberFormatLocal = "@"
[b1].Resize(UBound(drr), UBound(drr, 2)) = drr
End Sub
|
|