lwz642246 发表于 2012-5-13 15:41:43

excel printout错误 崩溃

本帖最后由 lwz642246 于 2012-5-19 21:19 编辑

自己需要设定自动打印excel文件,下面代码,在设置好默认打印机时能正常执行,但无打印机时直接崩溃退出,不能执行MsgBox(4096, "提示!!", "测试一下", 8)这句,请问怎么容错处理。

#include <Excel.au3>
Local $oExcel = _ExcelBookNew()
With $oExcel.worksheets(1)
        .cells(1, 1) = "测试"
        .printout
EndWith
Sleep(500)
_ExcelBookClose($oExcel, 0)
MsgBox(4096, "提示!!", "已打印", 8)

谢谢kevinceh,已解决#include <Excel.au3>
Local $oExcel = _ExcelBookNew()
If $oExcel.ActivePrinter = "" Or StringInStr($oExcel.ActivePrinter, "Microsoft") > 0 Then
MsgBox(4096+262144+64, "打印失败!!   找不到打印机", "没有找到默认打印机,无法打印,请选择设置可用的默认打印机", 5)
Else
With $oExcel.worksheets(1)
        .cells(1, 1) = "测试"
        .printout
EndWith
endif
Sleep(500)
_ExcelBookClose($oExcel, 0)

kevinch 发表于 2012-5-13 16:53:32

没试过,试下if .parent.parent.application.PrintCommunication=true then .printout还可以提取打印机名试下:
.parent.parent.application.ActivePrinter

lwz642246 发表于 2012-5-15 23:36:08

没试过,试下还可以提取打印机名试下:
.parent.parent.application.ActivePrinter
kevinch 发表于 2012-5-13 16:53 http://www.autoitx.com/images/common/back.gif

谢谢,试了一下,直接退出,能不能注释一下。

kevinch 发表于 2012-5-16 15:10:24

PrintCommunication
字面意思应该很清楚吧,打印机是否已连接

lwz642246 发表于 2012-5-19 21:15:07

回复 4# kevinch 谢谢帮助,已解决。答案见一楼
页: [1]
查看完整版本: excel printout错误 崩溃