|
|
这个应该可以满足你的要求.顺序位置可以不一样,但是字段的名称必须一致.
- Sub 批量生成明细()
- Set d = CreateObject("Scripting.Dictionary")
- ar = Sheets("支付明细").Range("a1").CurrentRegion
- Set Sh = Sheets("计提利息")
- br = Sh.Range("a1").CurrentRegion
- ReDim cr(1 To 100000, 1 To UBound(br, 2))
-
- a = CDate(Sheets("支付明细").[p2])
- For i = 1 To UBound(ar, 2)
- d(ar(1, i)) = i
- Next i
- For i = 2 To UBound(ar)
- a1 = DateSerial(Year(ar(i, 1)), Month(ar(i, 1)), 1)
- Do While a1 <= a
- n = n + 1
- For j = 1 To UBound(br, 2)
- b = d(br(1, i))
- If b <> "" Then cr(n, j) = ar(i, b)
- Next j
- cr(n, d("日期")) = a1
- a1 = DateAdd("m", 1, a1)
- Loop
- Next i
- Sh.[A2].Resize(n, UBound(br, 2)) = cr
- End Sub
复制代码
|
评分
-
1
查看全部评分
-
|