|
发表于 2016-5-21 09:45
|
显示全部楼层
本楼为最佳答案
填充的颜色毕竟有限,数据多的话,在表一和表二相互标注行数- Sub Macro1()
- Dim arr, brr, ar, d, d2, i&
- Set d = CreateObject("scripting.dictionary")
- Set d2 = CreateObject("scripting.dictionary")
- arr = Range("a2").CurrentRegion
- brr = Range("l2").CurrentRegion
- ReDim ar(1 To UBound(arr), 1 To 1)
- For i = 3 To UBound(arr)
- ar(i, 1) = arr(i, 1) & "," & arr(i, 5)
- d(ar(i, 1)) = i
- Next
- For i = 3 To UBound(brr)
- zf = brr(i, 1) & "," & brr(i, 2)
- d2(zf) = i
- brr(i, 1) = d(zf)
- Next
- For i = 3 To UBound(ar)
- ar(i, 1) = d2(ar(i, 1))
- Next
- Range("j1").Resize(UBound(ar)) = ar
- Range("n1").Resize(UBound(brr)) = Application.Index(brr, 0, 1)
- End Sub
复制代码 |
|