Код VBA для печати каждого листа в рабочей книге в допустимом размере

#excel #vba

#преуспеть #vba #excel

Вопрос:

Я попробовал следующий код, но, похоже, он не работает — кто-нибудь может помочь мне отладить?

 Sub printt()

Dim wb As Workbook
Dim ws As Worksheet

Set wb = Workbooks.Open("link to file")

For Each ws In wb
ws.PageSetup.PaperSize = xlPaperLegal
Next

For Each ws In wb
ws.PrintOut
Next

End Sub
  

Комментарии:

1. но, похоже, это не работает … Не помогает. Что это за сообщение об ошибке?

2. ‘объект не поддерживает это свойство или метод’

3. Пожалуйста! В какой строке? Мы не можем читать ваши мысли!

4. Ваш For Each цикл должен ссылаться wb.Worksheets не только wb

Ответ №1:

 Sub printt()

Dim wb As Workbook 
Dim ws As Worksheet

Set wb = Workbooks.Open("link to file")

For Each ws In wb.worksheets
     ws.PageSetup.PaperSize = xlPaperLegal 
     ws.PrintOut
Next ws




End Sub
  

Комментарии:

1. Я попробовал этот код, и я получаю ошибку, в которой говорится, что «метод «распечатка» объекта «рабочий лист» не удался