|
9910343 发表于 2012-6-23 08:35
就是把数据的位置换一下,能否把代码的意思解释一下,授人以鱼不与授人以渔嘛 - Sub 导入()
- Dim ar, br
- Dim d As Object
- Dim i As Integer
- Set d = CreateObject("scripting.dictionary")
- ar = Sheets("数据源").Range("a1").CurrentRegion
- br = Sheets(1).Range("a1").CurrentRegion '将数据赋入数组中,提高运行效率
- For i = 2 To UBound(ar)
- d(ar(i, 2)) = ar(i, 6) 'ar(i,2)表示名称,ar(i,6)为止码,要是数据变换列数,可以相应改里面的数字
- Next
- For i = 2 To UBound(br)
- If d.exists(br(i, 2)) Then 'br(i,2)表示名称
- br(i, 5) = d(br(i, 2)) 'br(i,5)表示起码,br(i,2)表示名称,br(i,6)为止码
- br(i, 6) = ""
- End If
- Next
- With Sheets(1)
- .Range("a1").Resize(UBound(br), UBound(br, 2)).ClearContents
- .Range("a1").Resize(UBound(br), UBound(br, 2)) = br '将数组赋到单元格区域中
- End With
- End Sub
复制代码
|
|