分页单独打印Excel表中指定行的数据( 二 )

‘数据记录工作表变量
Dim wksDatas As Worksheet
‘模板工作表变量
Dim wksTable As Worksheet
‘数据记录工作表中最后一行变量
Dim lngLastRow As Long
‘循环变量
Dim i As Long
‘开始行和结束行变量
Dim lStartRow As Long
Dim lEndRow As Long
‘将工作表赋给相应的变量
Set wksDatas = Worksheets(“数据”)
Set wksTable = Worksheets(“表格模板”)
‘获取数据记录工作表最后一行行号
lngLastRow = wksDatas.Range(“A”& Rows.Count).End(xlUp).Row
‘忽略错误
On Error Resume Next
‘获取数据值
lStartRow = CLng(txtStartRow.Text)
lEndRow = CLng(txtEndRow.Text)
If lStartRow > lEndRow Or lStartRow<2 or=”” lstartrow=””>lngLastRow Or lEndRow > lngLastRow Then
MsgBox “数字不符合要求!”
txtStartRow.Text = “”
txtEndRow.Text = “”
Exit Sub
End If
‘遍历数据记录工作表中数据行
‘将相应数据填入模板工作表
For i = lStartRow To lEndRow
‘将数据工作表中的数据填入模板
With wksDatas
wksTable.Range(“B3”) =.Range(“A” & i)
wksTable.Range(“F3”) =.Range(“B” & i)
wksTable.Range(“B4”) =.Range(“C” & i)
wksTable.Range(“D4”) =.Range(“D” & i)
wksTable.Range(“F4”) =.Range(“E” & i)
wksTable.Range(“B5”) =.Range(“F” & i)
wksTable.Range(“F5”) =.Range(“G” & i)
wksTable.Range(“B6”) =.Range(“H” & i)
wksTable.Range(“F6”) =.Range(“I” & i)
wksTable.Range(“B7”) =.Range(“J” & i)
wksTable.Range(“B8”) =.Range(“K” & i)
End With
‘打印
wksTable.PrintOut
Next i
‘卸载用户窗体
Unload urfNum
End Sub
运行代码后,将出现如下所示的输入界面,可以在文本框中依次输入要打印的起始行行号和结束行行号,来打印处于这两行之间的数据 。如果两个行号相同,则只打印该行数据 。

分页单独打印Excel表中指定行的数据


:运行后要求输入数字的界面
下面是上述代码的图片版:
分页单独打印Excel表中指定行的数据


猜你喜欢