vba高级代码汇总
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实用vba高级代码汇总
Sub 双面打印代码()
On Error Resume Next
x = ExecuteExcel4Macro("Get.Document(50)")
For i = 1 To Int(x / 2) + 1
ActiveWindow.SelectedSheets.PrintOut From:=2 * i - 1, To:=2 * i - 1
Next i
MsgBox "请将打印出的纸张反向装入纸槽中", vbOKOnly, "打印另一面"
For j = 1 To Int(x / 2) + 1
ActiveWindow.SelectedSheets.PrintOut From:=2 * j, To:=2 * j
Next j
End Sub
Excel如何设置双面打印
从节约的角度出发,有时Excel表格需要双面打印。
但Excel偏偏没有这一功能!怎么办?自己动手添加一个“双面打印”的按钮吧!
编辑宏
第一步:启动Excel 2000(其他版本请仿照操作),执行“工具”à“宏”→“Visual Basic编辑器”命令,进入Visual Basic编辑状态。
第二步:在右侧的“工程资源管理器”区域中,选中“VBAProject(PERNOSAL.XLS)”选项,执行“插入”→“模块”命令,插入一个新模块(模块1)。
小提示:“PERNOSAL.XLS”叫做“个人宏工作簿”,第一次使用宏功能时,需要进入下述操作,添加“个人宏工作簿”:在Excel中,执行“工具→宏→录制新宏”命令,打开“录制新宏”对话框(如图2),输入一个名称,然后选择将其“保存在”“个人宏工作簿”中,确定返回,随便做一下编辑操作,然后按“停止录制”工具栏上的“停止录制”按钮,系统即可自动添加“个人宏工作簿”。
第三步:双击“模块1”进入代码输入区域,将下述代码输入其中:
Sub dy()
On Error Resume Next
x = ExecuteExcel4Macro("Get.Document(50)")
For i = 1 To Int(x / 2) + 1
ActiveWindow.SelectedSheets.PrintOut From:=2 * i - 1, To:=2 * i - 1 Next i
MsgBox "请将打印出的纸张反向装入纸槽中", vbOKOnly, "打印另一面"
For j = 1 To Int(x / 2) + 1
ActiveWindow.SelectedSheets.PrintOut From:=2 * j, To:=2 * j
Next j
End Sub
第四步:输入完成后,关闭Visual Basic编辑窗口返回。
添加按钮
第一步:执行“工具→自定义”命令,打开“自定义”对话框(如图3)。
第二步:切换到“命令”标签下,在“类别”下面选中“宏”选项,然后将右侧“命令”下面的“自定义按钮”选项拖到工具栏合适位置上,添加一个按钮。
第三步:单击“更改所选内容”按钮,在随后展开的快捷菜单中,在“命名”右侧的方框中输入按钮名称(如“双面打印”,并选中“总是用文字”选项。
第四步:在不关闭“自定义”对话框的情况下,右击工具栏上刚才添加的“双面打印”按钮(参见图3),在随后弹出的快捷菜单中,选择“指定宏”选项,打开“指定宏”对话框(如图4)。
第五步:选中上面编辑的宏,确定退出,再关闭“自定义”对话框返回Excel 编辑状态。
双面打印
启动Excel,打开需要双面打印的工作簿文件,单击“双面打印”按钮,系统先将奇数页打印出来,然后弹出如图5所示的提示框,将打印的纸张反向装入打印机的纸槽中,按下“确定”按钮,即可将偶数页打印到另一面上,达到双面打印的目的。
小提示:如果在打印过程中,出现夹纸现象,致使部分页面损坏,可以通过执行“文件”à“打印”命令,打开“打印”对话框,用手动的方法将少量损坏的页单独打印出来即可。
还有一种方法是用文件菜单中的打印命令来完成的,也不知能不能帮到你,具体操作是:
进入打印命令后在出现的打印内容对话框中的打印范围中进行设置
勾选页,然后再在从页到页的对话框中填上页码,系统会有规律的完成,不必所有页码都写,具体如下:
奇页:1.3.5-最后一个奇数页的页码
偶页:2,4,6-最后一个偶数页的页码
以此类推,还可以设置其他种规律的打印,比如说打三页,空两页,再打三页,你可以试试,需要注意的是要用半角(英文)符号隔开,页不能用全角(中文)间隔。
呵呵,这当然没有WORD中的好用,这完全是个人实践,希望有更好的方法。