- Sub Check()
- Dim Temp As Single, Ar(), Br(), I&, J&, Cr(), K&
- Ar = Range("c7:e" & Cells(Rows.Count, 3).End(3).Row)
- Br = Range("f7:g" & Cells(Rows.Count, 6).End(3).Row)
- ReDim Cr(1 To 10000, 1 To 3)
- I = 1: J = 1
-
- Do While I <= UBound(Ar) And J <= UBound(Br)
- K = K + 1
- Cr(K, 1) = Br(J, 1): Cr(K, 3) = Cr(K, 1) - Ar(I, 3)
- Temp = Br(J, 2) - Ar(I, 2)
- If Temp < 0 Then '回款全部弥补
- Ar(I, 2) = -Temp
- Cr(K, 2) = Br(J, 2)
- J = J + 1
- Else '回款未全部弥补欠款
- Br(J, 2) = Temp
- Cr(K, 2) = Ar(I, 2)
- I = I + 1
- End If
- Loop
- Range("i7").Resize(K, 3) = Cr
- End Sub
复制代码 |