|
发表于 2016-4-12 16:10
|
显示全部楼层
本楼为最佳答案
考虑到“收款单”的条件,代码改动如下:- Sub 提取最近日期()
- Set d = CreateObject("scripting.dictionary")
- arr = Sheets("数据库").[a1].CurrentRegion
- For i = 2 To UBound(arr)
- If arr(i, 1) = "收款单" Then
- kh = arr(i, 6): rq = arr(i, 3)
- If rq > d(kh) Then d(kh) = rq
- End If
- Next
- With Worksheets("月余额表")
- r = .Cells(.Rows.Count, 1).End(xlUp).Row
- arr = .Range("a5:J" & r)
- For i = 1 To UBound(arr)
- arr(i, 10) = d(arr(i, 2))
- Next
- .Range("j5").Resize(UBound(arr), 1) = Application.Index(arr, 0, 10)
- End With
- End Sub
复制代码 |
|