如题,目前只实现了在第一个表中填入并连续打印。
求助:如何sheet1中的源数据按序号从上向下依次填入sheet2中并连续打印
我曾试着用For i = 1 To m - 2 Step 2来调试,但结果不对,没有出现打印页面全部填写全再打印,有时只有一个单元格内有值了就打印了,不知道问题在哪儿。
能否通过不同的步长来实现,即填充数据的第1行数据填入第1个信息表,第2行数据填入第2个信息表,第3行数据填入第3个信息表,第4行数据填入第4个信息表,第5行数据填入第1个信息表,依次类推。不知我的表述是否严谨,就是这么一个想法,见笑。
Sub 连续打印()
ARR = Sheet1.Range("B3:J" & Sheet1.[B65536].End(3).Row)
brr = Array("B2", "D2", "F2", "B4", "D4", "F4", "B6", "D6", "F6")
For I = 1 To UBound(ARR) Step 4
Range("B2:B27,D2:D27,F2:F27").ClearContents
For K = 0 To 3
If I + K > UBound(ARR) Then GoTo 10
For J = 0 To 8
Range(brr(J)).Offset(K * 7, 0) = ARR(I + K, J + 1)
Next
Next
VBA.DoEvents
10 ActiveSheet.PrintOut
Next
End Sub
Sub 连续打印()
ARR = Sheet1.Range("B3:J" & Sheet1.[B65536].End(3).Row)
brr = Array("B2", "D2", "F2", "B4", "D4", "F4", "B6", "D6", "F6")
For I = 1 To UBound(ARR) Step 4
Range("B2:B27,D2:D27,F2:F27").ClearContents
For K = 0 To 3
If I + K > UBound(ARR) Then GoTo 10
For J = 0 To 8
Range(brr(J)).Offset(K * 7, 0) = ARR(I + K, J + 1)
Next
Next
VBA.DoEvents
10 ActiveSheet.PrintOut
Next
End Sub