分页单独打印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
运行代码后,将出现如下所示的输入界面,可以在文本框中依次输入要打印的起始行行号和结束行行号,来打印处于这两行之间的数据。如果两个行号相同,则只打印该行数据。
:运行后要求输入数字的界面
下面是上述代码的图片版:


猜你喜欢
- Chrome从76版开始,在Windows、Mac和Linux平台上单独运行音频。谷歌已经将音频从浏览器进程转移到了一个单独的进程,当视频或
- Win7系统为我们提供了优越的系统性能、强劲的功能还有精美绚丽的界面,并且精心设计了一些小巧方便的快捷功能。WIN7提供的便笺很方便,用来记
- 有,下角标有快捷键,下标快捷键为:CTRL+= 上标的快捷键是:CTRL+SHIFT+=操作步骤:
- 咱们在 操纵WPS表格与Excel表格 停止 一样平常办公时, 常常 需求 建造 林林总总的表格,当 咱们 输出的数据 太长的 时分,就会
- 在word中怎么删除分页符?怎么在word中显示分页符?很多办公人员都会碰到这样的问题,但又不知道怎么操作,其实方法很简单,下面小编word
- 本篇文章小编为大家介绍,在linux 自启动服务的三种设置方式,需要的朋友可以参考一下有时候我们需要Linux系统在开机的时候自动加载某些脚
- 您可以在文档中向上或向下移动标题。要移动标题,请按照下列步骤操作:使用鼠标或键盘,将光标移至要升级或降级的标题。选择以下方法之一:单击“大纲
- Windows XP系统下如何更改网卡速率 详细介绍。解决方案:第一步 我的电脑右键单击选择属性(如下图):第二步 打开硬件,选择设备管理器
- 1.首先需要将准备截取的窗口不要设置为最小化,然后打开Word2010文档页面,单击“插入”选项卡。2.接着在“插图”中单击“屏幕截图”按钮
- 大多数人在日常生活中都会使用到电脑,当中或多或少会有其他人进行使用,担心他们对电脑更改一些设置,就需要禁用设置和控制面板。那么要如何禁用呢?
- Win7应用程序无法正常启动怎么解决?在计算机的操作、运行中,难免遇到应用程序无法安装或者无法正常启动运行的问题,这对我们使用计算机带来了很
- 许多小伙伴在用电脑打开网页时,发现网页上的图片加载速度很慢或无法直接加载,显示出一个×的标志,这是怎么回事?也许你的网速太低了,等一会儿就可
- 当无线网卡使用的时间久了,就容易出现掉线,没网的情况,这是怎么回事呢,该怎么解决呢?这时我们就需要进行更新一下无线网卡驱动啦!接下来,小编就
- 高中物理有一章节是讲星体运动的,这就需要学生去自由想象卫星绕月球运行的轨迹,如果能够制作出这样的课件,对于学生的理解很有帮助。那么,在Pow
- WPS怎么画红蜻蜓?wps中想要画一个有颜色的红蜻蜓,该怎么画红蜻蜓呢?下面我们就来看看wps蜻蜓的画法,很简单,需要的朋友可以参考下wps
- 据外媒爆料,微软前雇员贴出一张列有一串尺寸规格的图片让大家猜测。虽然没指名是什么,但是从众多用户的回复来看,其指代新版磁贴尺寸的可能性非常大
- wps文字添加超链接的方法。在制作wps文档的时候,怎么在文本中添加超链接呢?其实方法很简单鼠标右键就有超链接添加按钮,下面小编就为你提供w
- 使用自动维护功能能够对系统进行更新扫描,清理磁盘,那么自动维护功能在哪里呢?下面为大家介绍下WinXP使用自动维护功能的方法很多人都不知道W
- 最近一些Win7用户发现无法修改自己电脑上的通知区域图标,这个问题该怎么办呢?今天小编就教大家一个简单的解决方法吧,有遇到这种问题的用户一起
- 我们经常会将文件存储在自己所创建的文件夹中,而最近有小伙伴在寻找文件的时候发现文件夹的名称变成了乱码给操作带来了麻烦,那么在遇到这种情况的时