vba设置怎么EXCEL自动打印?

vba设置怎么EXCEL自动打印?,第1张

sub dayin()\x0d\x0a Application.ActiveSheet.PrintOut copies:=1\x0d\x0aend sub\x0d\x0a这是打印当前的工作表 打印一份\x0d\x0a如果是打印当前工作薄中的工作表\x0d\x0aExcel.ActiveWorkBook.PrintOut(1,Excel.WorkSheets.count,1,.T.) 带参数的打印\x0d\x0a参数说明:共四个参数\x0d\x0a参数1-数值:当前工作簿中进行打印的起始工作表号(默认1)参数2-数值:当前工作簿中进行打印的结束工作表号(默认最末)\x0d\x0a参数3-数值:打印份数(默认1)\x0d\x0a参数4-逻辑值:是预览打印还是直接打印:.T.-预览打印,.F.-直接打印(默认.F.)\x0d\x0aExcel.ActiveSheet.PrintOut()\x0d\x0a参数说明:共八个参数\x0d\x0a参数1-数值:起始页号,省略则默认为开始位置参数2-数值:终止页号,省略则默认为最后一页\x0d\x0a参数3-数值:打印份数,省略则默认为1份\x0d\x0a参数4-逻辑值:是否预览,省略则默认为直接打印(.F.)\x0d\x0a参数5-字符值:设置活动打印机名称,省略则为默认打印机\x0d\x0a参数6-逻辑值:是否输出到文件,省略则默认为否(.F.),若选.T.且参数8为空,则Excel提示输入要输出的文件名\x0d\x0a参数7-逻辑值:输出类型,省略则默认为(.T.)逐份打印,否则逐页打印\x0d\x0a参数8-字符值:当参数6为.T.时,设置要打印到的文件名\x0d\x0aExcel.ActiveSheet.PrintOut(1,3,6,.F.,"MyPrinter",.F.,.T.,,) 从1页打印到3页,打印6份,通过MyPrinter打印机来打印,并且,要逐份打印。

在EXcel的VB编辑器中插入一个模块,输入如下代码试试看。

Sub ExcelToWord()

Dim WordObject As Object '声明一个对象变量,这里即将声明为Word对象

On Error Resume Next

Set WordObject = CreateObject("Word.Application") '用set来创建Word对象,这里是运行Word程序,但未新建文档

WordObject.Visible = 0 '后台运行Word对象,只在任务管理器中存在WinWord.exe进程,但在任务栏上看不到word;如果为1或者True则可以看到word运行界面

WordObject.Documents.Add DocumentType:=wdNewBlankDocument '新建一word文档

'以下为获取Excel表格中的内容,准备把数据传送给Word,可以根据自己的实际需要定制代码,这里只是示例代码

Excel.Application.Sheets(1).Activate '切换当前电子表格的表1为当前激活表

Excel.Application.Sheets(1).UsedRange.Select '选中当前激活表的所有数据

Selection.Copy '将选中的区域进行复制

WordObject.Application.Activate '将后台运行的Word激活为当前窗口

WordObject.ActiveWindow.Selection.Paste '将刚才从Excel中复制进剪贴板中的内容粘贴进word中来

WordObject.Saved = True '将保存文档的Saved属性设置为True,这样后台运行的Word在保存文档时就不会d出是否保存的对话框了,达到悄无声息的效果

WordObject.ActiveDocument.SaveAs "D:\temp\导出数据.doc" '调用saveas命令保存文档,根据实际,指定文档的保存路径和名称

WordObject.Application.Quit '退出并关闭程序文档

Set WordObject = Nothing '释放对象

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7736995.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存