分页单独打印Excel表中指定行的数据
发布时间:2023-04-22 13:47:38
我只想打印其中的一行,或者从第m行到第n行的数据,这如何实现呢?
示例数据工作表、打印样式和要打印的表格模板工作表分别如下、和所示。
将“数据”工作表(如所示)中的数据导入“表格模板”工作表(如所示)中并打印出来(如所示)。
数据工作表
打印的样表
表格模板工作表
使用输入框打印指定行数据
如果要打印指定的数据行,可以简单地使用Application对象的InputBox方法,用来让用户输入要打印的行号。代码如下:
Sub printARowData()
‘数据记录工作表变量
Dim wksDatas As Worksheet
‘模板工作表变量
Dim wksTable As Worksheet
‘数据记录工作表中最后一行变量
Dim lngLastRow As Long
‘行变量
Dim lRow As Long
‘提示信息
Dim strPrompt As String
‘忽略错误
On Error Resume Next
‘将工作表赋给相应的变量
Set wksDatas = Worksheets(“数据”)
Set wksTable = Worksheets(“表格模板”)
‘获取数据记录工作表最后一行行号
lngLastRow = wksDatas.Range(“A”& Rows.Count).End(xlUp).Row
‘标题字符串
strPrompt = “请输入2-” & lngLastRow & “之间的数字”
‘获取要打印的行
lRow =Application.InputBox(Prompt:=strPrompt, _
Title:=”打印指定行”, _
Type:=1)
Debug.Print lRow
‘限定输入的数字在数据范围内
If lRow > 1 And lRow < lngLastRow + 1Then
‘将数据工作表中的数据填入模板
With wksDatas
wksTable.Range(“B3”) =.Range(“A” & lRow)
wksTable.Range(“F3”) =.Range(“B” & lRow)
wksTable.Range(“B4”) =.Range(“C” & lRow)
wksTable.Range(“D4”) =.Range(“D” & lRow)
wksTable.Range(“F4”) =.Range(“E” & lRow)
wksTable.Range(“B5”) =.Range(“F” & lRow)
wksTable.Range(“F5”) =.Range(“G” & lRow)
wksTable.Range(“B6”) =.Range(“H” & lRow)
wksTable.Range(“F6”) =.Range(“I” & lRow)
wksTable.Range(“B7”) =.Range(“J” & lRow)
wksTable.Range(“B8”) =.Range(“K” & lRow)
End With
‘打印
wksTable.PrintOut
Else
MsgBox “输入的行不存在!”
End If
End Sub
运行代码,弹出如所示的输入框,可在其中输入要打印数据所在的行号,实现数据打印。
在其中输入要打印数据所在的行号
代码的图片版如下:
代码图片
使用用户窗体指定要打印的行数据范围
首先,设计用户窗体来获取用户输入的数值,如下所示。用户窗体名为urfNum,在两个文本框
txtStartRow和txtEndRow中分别输入开始行和结束行的行号,单击名为cmdOK的确定按钮来打印。
:用户窗体设计
用户窗体模块代码:
Private Sub cmdOK_Click()
‘数据记录工作表变量
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
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
运行代码后,将出现如下所示的输入界面,可以在文本框中依次输入要打印的起始行行号和结束行行号,来打印处于这两行之间的数据。如果两个行号相同,则只打印该行数据。
:运行后要求输入数字的界面
下面是上述代码的图片版:
猜你喜欢
- 查找与替换真的不好用吗?本期Word小编与大家分享一下有关查找与替换在批量处理上的妙用。1、批量删除空行选中区域,按Ctrl+H打开查找和替
- Win10系统转移到其他电脑上如何正常启动和使用?微软已从Windows 10中删除“轻松传送”,但用户仍然可以在电脑之间移动用户配置文件。
- 前面小编给大家介绍了pdf文件怎么转换成word,很多网友看到后就在问,能不能把pdf文件转换成excel呢?怎么把pdf文件转换成exce
- iOS 15.4 出现异常耗电的问题让众多果粉纷纷降级,而今iOS 15.3 RC 候选版也关闭验证,iOS 15.4降级彻底无望了。为什么
- 有些用户win10用的挺好的,就是发现电脑任务栏中电源图标不见的情况,这样要用到电源设置都不知道怎么去调出来,多少会影响我们的学习或者工作。
- 在本文将为大家分享一个关于银行卡号的应用,如银行卡号为3303271988090725,接下来我们要做的就是每隔4位加个空格。我们很容易想到
- Win系统因为丰富的操作体验感和自定义功能而被广大用户而喜欢,最近有的用户发现Win10系统的鼠标突然无反应了,即使更换鼠标设备之后还是没办
- 如果我们在安装win10操作系统计算机时意外关闭win10系统,很多用户不知道如何解决。小编认为,这个问题可能是由于我们计算机内部文件的意外
- 目前已在官方MSDN订阅中心上线Office 2016正式版ISO镜像下载,同时还发布了Visio 2016以及Project 2016同系
- wps文字设置字体间距的方法1打开wps文字选中需要调整行距的文字; 2在选中的文字区域点击鼠标右键,在弹出的菜单
- 如何在Word 2013文档中插入形状?Word 2013附带了可以插入文档中的常用形状库。图形专业人士称形状为线条艺术。您可以按照以下步骤
- 在Word2010中段落对齐方式是指段落在水平方向上的排列方式。在Word2010中,段落的对齐方式有5中,分别为“文本左对齐”、“居中”、
- 具体方法如下:1、点击菜单栏中的【插入】选项;2、在弹出的二级菜单中选择【公式】选项;3、在公式编辑器中选择【公式】样式;4、根据需要输入分
- 很多用户在win10系统中安装软件,应该都遇到过系统提示“系统提示此应用无法在你的电脑上运行”,其实这个问题是一些未知软件才会引起,下面小编
- Excel中输入汉语拼音时我们都是用字母直接拼,但是当需要输入带音调的汉语拼音时还靠直接输入就不行了,那么该如何实现呢?下面小编就为大家详细
- 当微软首次透露Word 2013中的新功能时,最大的亮点之一就是允许用户在他们的文本文件中插入在线视频。近日,该公司又补充了关于这一特殊功能
- 截屏是使用比较频繁的操作,在浏览网页遇到有用的内容或者聊天时想要截下一段话都需要使用到截屏,对电脑了解一点的朋友可能会打开QQ之类的第三方软
- Excel表格在数据很多的情况下,容易重复输入数据,为了保证Excel表格的准确性,我们需要将重复的数据筛选出来,在Excel中如何有效的筛
- 近日,有网友问小编:为什么每次打开word文档都会显示配置进度呢?这类现象如何解决呢?针对此问题,本文就为大家图文介绍两种解决Word文档提
- 朋友把他做好的产品销量分析图表给领导看,领导问:“我能不能自己随意选择产品,来单独看这一种产品的销量情况?”朋友犯了难,问有没有办法达到领导