我在报告的单元格 D5:D103 中有一系列公式,这些公式链接到书中的另一张表。A:C 列包含文本结果,D 列有 $ 金额作为结果。A4:D4 包含数据标题,A1:D3 是描述报表的通用标题。最后一行的位置每个月都会改变,可能>103,也可能<103。
在每 16 行数据之后,我需要插入从工作表中的命名范围粘贴的 3 行乘 4 列,并在 3 行中的第 2 列的 D 列中插入总共 16 行。然后我在下面添加一个分页符(由其他要求决定的粗略的分页练习)。
以下代码实现了大部分功能:-
Dim Formula1 As String
Formula1 = "=SUM(R[-17]C:R[-2]C)"
For i = 21 To (Range("a5", Range("d4").End(xlDown)).Rows.Count + 4) Step 19
Range("Total_credit").Select
Selection.Copy
Range("a" & i).Select
Selection.Insert Shift:=xlDown
Range("a" & i).Offset(1, 3) = Formula1
Selection.Offset(3).PageBreak = xlPageBreakManual
Next i
但是,我在底部留下了 19 行数据块,应该是 2 个 16 行的数据块,粘贴文本和每个下面的总数(理想情况下,最后一个序列中不会有空白行,但我可以活如果我能把剩下的都做对的话)。当我使数据块大几行时,似乎会发生同样的问题,即最后一个总数总是在同一个地方(D117)。
看起来 i 的值在增加每个循环,但这似乎并没有反映在过程中。我已经尝试了各种方法并彻底搜索无济于事,现在我的头正在旋转。我相信有人会立即看到我出错的地方,这似乎应该是一个简单的修复。
提前致谢。