为什么我从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"