1. vba编程打印
要双面打印只要设置打印机属性: 选择打印——属性——完成——双面打印。如何打印机没有双面打印功能, 另一方法可以借助ExcelPrinter工具,它是一个可以增强Excel打印功能的小插件
2. vba编程打印输出打印文件
引号在 vba中是关键特殊字符,如果把引号当成普通字符进行输出。需要进行转义,再用引号括起来
3. vba如何打印输出
如何用ExcelVBA批量打印文件有时候一个文件夹内有很多Excel文件,几十个,上百个,如果一个个的打开,然后再打印,显然重复劳动,效率低下。
SubCopy_Data()DimwbAsWorkbook,rngAsRange,shtAsWorksheetDimsht_Name,theDatesht_Name="Sheet1"'假设所有报表文件中的数据都在Sheet1Setsht=ActiveSheet'保存当前工作表对象fn=Dir(ThisWorkbook.Path&"\报表-*.xls",
4. VBA调用打印机
用Application.ActivePrinter 属性设置。例如将 "Microsoft Print to PDF" 设为默认打印机:Application.ActivePrinter = "Microsoft Print to PDF 在 Ne01:"注意这个字符串前一部分是打印机名称,后一部分是端口位置
5. vba打印代码大全
你的打印区域是不是已经设置好?直接在本表打印就可以了是吗?
以下代码是每一个“√号”打印一次。是要这样的效果?
for i=15 to 100 ‘设置开始结束行数
If Cells(i, 96) = "√" Then
Cells(1, 3) = Cells(i, 1)
ActiveSheet.PrintOut
End If
next
6. vba一键打印编程代码大全
Private Sub Workbook_BeforePrint(Cancel As Boolean) Application.EnableEvents = False '不触发BeforePrint事件 ActiveSheet.PrintOut …… Application.EnableEvents = True Cancel = True '取消打印 End Sub VBA只有BeforePrint事件没有AfterPrint事件 用上面语句试试,可以模拟AfterPrint
7. vba打印代码
例如设置D8:E13为打印区域的VBA语句为:
ActiveSheet.PageSetup.PrintArea = "$D$8:$E$13"
8. vba编程打印收据
使打印票据的序号自动加一
第一步:调出VBA窗口 在当前打印票据工作表中按ALT+F11,此时会打开VBA窗口,按工具栏上的“插入-模块”,插入一个用户“模块”,然后把下面代码复制进去:
第二步:输入代码 Sub 打印()
s = Range("i2") '收据上的当前序号在I2单元格
ActiveWindow.SelectedSheets.PrintOut '调用打印命令打印当前页
Range("i2") = Left(s, 2) & Right(s, 10) + 1 '打印完毕后让序号加一
End Sub
代码不多,只有五行,其中第四行的 “Right(s, 10) + 1”的意思是从原序号中的右侧取出10位数字,再把这个数字加一。然后与“left(s,2)”组合成一个新的序号赋值给I2单元格。
这个“left(s,2)”表示从原序号的左侧取出两个字符,即“№”与后面的一个空格。
注意:在这个例子中,我们的票据序号在i2单元格。
第三步:添加按钮
上面这些完成后,就可以使用这个功能了,但为了方便使用代码,还要在收据的旁边添加一个按钮,每次按动这个按钮,就会调用上面的代码,完成打印并使序号加1。
在EXCEL窗口按“视图-工具栏-窗体”,调出“窗体”工具栏,用鼠标选择其中的“按钮”,并在屏幕的适当位置添加一个“按钮”。添加后会弹出一个“指定宏”的对话框,选择对话框中的“打印”宏(就是我们的VBA代码的名字),然后按确定。
在添加后的“按钮”上点鼠标右键,选“编辑文字”,给这个按钮起一个名字“打印”。
现在就可以使用了,按一下“打印”按钮,就会打印出当前页面,并自动将序号加1。
大家还可以在这个代码中添加其中功能,比如打印后自动清空“收据”的内容,以便输入新的内容。
9. vba打印excel
我有点小疑问,既然是全选,接着设定为打印区域,EXCEL工作表本来就是打印全部范围呀?当然,你可以用录制宏,来用VBA实现你的想法.点工具栏---宏---录制宏结束录制后,点工具栏---宏---运行宏执行,还可以点工具栏---宏---编辑宏
- 相关评论
- 我要评论
-