2023-07-06 12:17来源:m.sf1369.com作者:宇宇
设置宏按钮,录入宏,点击打印时自动选择非默认打印机,打印结束后恢复默认打印机,不其他表格依旧是默认打印机。
其他的你应该知道吧,建个宏,中间输入代码ActiveWindow.SelectedSheets.PrintPreview'打印预览Activeworkbooks.printout'打印就OK了,其实很多都可以从录制宏学到的。
如何用ExcelVBA批量打印文件有时候一个文件夹内有很多Excel文件,几十个,上百个,如果一个个的打开,然后再打印,显然重复劳动,效率低下。
SubCopy_Data()DimwbAsWorkbook,rngAsRange,shtAsWorksheetDimsht_Name,theDatesht_Name="Sheet1"'假设所有报表文件中的数据都在Sheet1Setsht=ActiveSheet'保存当前工作表对象fn=Dir(ThisWorkbook.Path&"\报表-*.xls",
用VBA写段代码来打印运单,并且指定针式打印机。如果每个运单是统一大小和格式,也就是行数列数都一样,你这个代码就很简单,自己就能完成。方法如下:你录制一个宏,录制的内容就是打印一次运单的全过程,包括打印时选择针式打印机。然后按钮指定的宏就是这个录制的宏即可。如果运单行数不统一,录制宏后需稍作修改
1.打开一个Excel的文件,在表格中输入简单的表格,比如学生成绩表格。
2.接着,鼠标左键单击【开发工具】菜单标签,在VBA控件下拉菜单中,并选择按钮控件,...
3.然后,在表格中绘制出按钮控件,并修改控件名称。
4.接着,鼠标左键单击【查看代码】按钮
5然后,在代码窗口中输入VBA语句,比如输入定义变量语句,并选择字符串类型
6接着,在代码窗口中输入读取单元格的VBA语句
7最后,在设计窗口上,鼠标左键单击按钮,可以看到表格中的,通过VBA程序读取数据,并输出到右边的单元格中,显示出数据了,通过这样的操作,就学会用VBA读取单元格数据了。
1、打开EXCEL工作薄,将其另存为启用宏的工作薄格式。然后在功能区找到开发选项,点击插入按钮控件。
2、点击空白处会出现新的对话框,点击新建,进入VBA设置对话框。在里面设置要打印的区域范围,设置完成后关闭VBA界面。
3、在按钮上点击右键,选中编辑文字,编辑一键打印四字,而后按下按钮,就会显示出设置好的打印区域。
在正式打印之前可以用打印预览看一下效果,确保所有内容在页面之内。如果超过页面宽度或高度,可以通过调整行高和列宽来改变页面大小。调整好上下左右页边距,设置好表头需要重复打印的行或列,设置好页眉、页脚内容。
注意,按住键盘上的Ctrl+P,就能弹出打印窗口,直接根据自己的需要选择打印即可。
我有点小疑问,既然是全选,接着设定为打印区域,EXCEL工作表本来就是打印全部范围呀?当然,你可以用录制宏,来用VBA实现你的想法.点工具栏---宏---录制宏结束录制后,点工具栏---宏---运行宏执行,还可以点工具栏---宏---编辑宏
例如设置D8:E13为打印区域的VBA语句为:
ActiveSheet.PageSetup.PrintArea = "$D$8:$E$13"
打开控件工具箱,插入一个命令按钮,然后右键冲击该按钮,指定宏就可啦啊
sub dayin() Application.ActiveSheet.PrintOut copies:=1end sub这是打印当前的工作表 打印一份如果是打印当前工作薄中的工作表Excel.ActiveWorkBook.PrintOut(1,Excel.WorkSheets.count,1,.T.) 带参数的打印参数说明:共四个参数参数1-数值:当前工作簿中进行打印的起始工作表号(默认1)参数2-数值:当前工作簿中进行打印的结束工作表号(默认最末)参数3-数值:打印份数(默认1)参数4-逻辑值:是预览打印还是直接打印:.T.-预览打印,.F.-直接打印(默认.F.)Excel.ActiveSheet.PrintOut() 参数说明:共八个参数 参数1-数值:起始页号,省略则默认为开始位置参数2-数值:终止页号,省略则默认为最后一页参数3-数值:打印份数,省略则默认为1份参数4-逻辑值:是否预览,省略则默认为直接打印(.F.)参数5-字符值:设置活动打印机名称,省略则为默认打印机参数6-逻辑值:是否输出到文件,省略则默认为否(.F.),若选.T.且参数8为空,则Excel提示输入要输出的文件名参数7-逻辑值:输出类型,省略则默认为(.T.)逐份打印,否则逐页打印参数8-字符值:当参数6为.T.时,设置要打印到的文件名Excel.ActiveSheet.PrintOut(1,3,6,.F.,"MyPrinter",.F.,.T.,,) 从1页打印到3页,打印6份,通过MyPrinter打印机来打印,并且,要逐份打印。
建议把人工操作步骤,写成按键精灵程序去半自动化完成。
vba对pdf处理极弱,python也好不了太多。或者你就把pdf转化成office文件(工具很多,例如Acrobat)再用vba处理。