在左侧“工程资源管理器”中,展开“VBAProject(PERSONAL.XLSB)”选项(这就是“个人宏工作簿”),双击其中的“模块1”,然后用下述代码替换右侧编辑区中的原有代码: Sub smdy() On Error Resume Next x = ExecuteExcel4Macro("get.document(50)") For i = 1 To Int(x / 2) + 1 ExecuteExcel4Macro "PRINT(2," & 2 * i - 1 & "," & 2 * i - 1 & ",1,,,,,,,,2,,,TRUE,,FALSE)" Next i MsgBox "请将打印纸反向装入打印机中", vbOKOnly, "打印另一面" For j = 1 To Int(x / 2) + 1 ExecuteExcel4Macro "PRINT(2," & 2 * j & "," & 2 * j & ",1,,,,,,,,2,,,TRUE,,FALSE)" Next j End Sub 输入完成后,关闭VBA编辑窗口返回到Excel编辑状态 这个很实用,请问,老师能不能再修改一下,可以手动指定打印页数,这样在打印较多的页数时就不需要一次全部把奇数页先出完,因为如果一次性出完奇数页 ,再反过来出偶数页时,当由于人为原因出错时,再调整很麻烦! 另,一般双面打印都是很多行,假如需要把某张页数只打印一张的一面,下一张打到另一张,然后继续双面打印,不知道这人功能能否实现?(例如:当工作表里边有不同的单位,要按照单位来打印装订时,假如这个单位刚好是奇数页,下一个单位的表就会接着打到偶数页上边去,不方便!) 如果上边两个功能可以实现,能否编一个FOR2003EXCEL的宏,我找了雷霆双面工具,他只支持2003EXCEL,并且没有指定打印页面选择项,只能一次性打印整个工作表! 盼望之中! |