У файлі Word у мене є макрос, який відкриває файл Excel і викликає макрос у цьому файлі. (Я використовую VBA.) Це простий код з Word:
Set oExcelApp = CreateObject("Excel.Application")
Set oWorkbook = oExcelApp.workbooks.Open("C:Documents and SettingsEddyMina dokumentInsajtArbetenPridoAffärssystemwwwmodulesmod_ordereco.xls")
oExcelApp.Visible = True
oExcelApp.Run ""ECO.xls"!Ritning"
Файл Excel відкривається, і макрос запускається, але потім я отримую підказку про помилку (у перекладі з шведської мови):
Помилка під час виконання "1004" Властивість PrintArea не можна вводити для класу PageSetup
Якщо я вибираю режим налагодження, цей рядок виділяється:
.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 і просто вручну викликаю той самий макрос, він працює як шарм. Те саме, якщо я вручну відкрию файл Excel і запускаю макрос, тоді все працює добре.
Відповіді:
0 для відповіді № 1Спробуйте використовувати список з комою, а не крапкою з комою
.PrintArea = "$A$1:$O$49,$Q$1:$AE$49,$Q$50:$AE$97,$AG$50:$AU$97"