为什么我从Word文档调用macros而不是从Excel中调用macros时出现错误1004?
在Word文件中,我有一个打开Excel文件并调用该文件中的macros的macros。 (我正在使用VBA。)这是Word的简单代码:
Set oExcelApp = CreateObject("Excel.Application") Set oWorkbook = oExcelApp.workbooks.Open("C:\Documents and Settings\Eddy\Mina dokument\Insajt\Arbeten\Prido\Affärssystem\www\modules\mod_order\eco.xls") oExcelApp.Visible = True oExcelApp.Run "'ECO.xls'!Ritning"
Excel文件打开,macros运行,但是我得到一个错误提示(从瑞典语翻译):
无法为类PageSetupinput运行时错误“1004”PrintArea属性
如果我selectdebugging模式,则此行将突出显示:
.PrintArea = "$A$1:$O$49;$Q$1:$AE$49;$Q$50:$AE$97;$AG$50:$AU$97"
整段代码是这样的:
If Sheets("Beräkningar").Cells(6, 2) = "4V" Then With Sheets("Ritn").PageSetup .PrintArea = "$A$1:$O$49;$Q$1:$AE$49;$Q$50:$AE$97;$AG$50:$AU$97" .Zoom = 85 End With Sheets("Ritn").PrintOut End If
现在到了真正奇怪的事情。 如果我放弃在Excel文件中的macros的调用,只是手动调用同一个macros,它就像一个魅力。 同样,如果我手动打开Excel文件并启动macros,那么一切正常。
尝试使用逗号分隔列表而不是分号
.PrintArea = "$A$1:$O$49,$Q$1:$AE$49,$Q$50:$AE$97,$AG$50:$AU$97"