看看功能及實現
1.出納數據表格如下圖:
2:憑證模板如下圖:
3:當點擊"生成憑證"按鈕時, 出納表格的每條數據按憑證模板生成一個憑證, 生成的憑證如下圖:
打印時,會每個憑證打印一頁
4. 實現該功能的VBA源碼:
Dim r As Integer
Dim i As Integer
Dim j As Integer
Dim k As Integer
Sheet1.Cells.PageBreak = xlPageBreakNone
r = Sheet2.UsedRange.SpecialCells(xlCellTypeLastCell).Row
For i = 11 To r
Sheet1.Rows(11).Delete shift:=xlUp
Next i
k = 2
For i = 2 To r
If (Sheet2.Range("G" & i) And Sheet2.Range("G" & i).Value) Then
If (i > 2) Then
Sheet1.Range("B1:V10").Copy Destination:=Sheet1.Range("B" & 10 * (k - 2) + 1)
Sheet1.HPageBreaks.Add Range("B" & 10 * (k - 2) + 1)
For j = 1 To 10
Sheet1.Rows(j + 10 * (k - 2)).RowHeight = Sheet1.Rows(j).RowHeight
Next j
End If
Sheet1.Range("D" & (4 + 10 * (k - 2))).Value = Sheet2.Range("F" & i).Value
Sheet1.Range("U" & (2 + 10 * (k - 2))).Value = Sheet2.Range("E" & i).Value
Sheet1.Range("V" & (5 + 10 * (k - 2))).Value = Sheet2.Range("G" & i).Value
Sheet1.Range("N" & (2 + 10 * (k - 2))).Value = Sheet2.Range("B" & i).Value
Sheet1.Range("P" & (2 + 10 * (k - 2))).Value = Sheet2.Range("C" & i).Value
Sheet1.Range("R" & (2 + 10 * (k - 2))).Value = Sheet2.Range("D" & i).Value
k = k + 1
End If
Next i
歡迎留言交流,或者聯繫QQ:44048955