• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Meerdere sheets printen

Status
Niet open voor verdere reacties.

Dokman

Gebruiker
Lid geworden
5 jun 2023
Berichten
156
Hallo,

ik heb en Excel-bestand met 30 sheets er in. Nu heb ik en code die print alle sheets uit. Op 1 pagina 1 sheet.
Maar collega's hebben aanpassingen gedaan. Waardoor sommige sheets nu langer zijn dan 1 A4'tje. En hij die sheets dus op 2 A4'tjes print.

Ik kan nergens vinden hoe ik dit weer passend krijgen met en code. Als ik gewoon de print optie in Excel gebruik en dit voor.
Blad passend maken voor een pagina.

Hoe kan ik dit nu doen in een vba script.

Deze gebruik ik nu.
Code:
Sub print_all_sheets()
Worksheets.PrintOut
End Sub

Al vast bedankt.
 
Je kunt deze eens proberen

Code:
Sub jec()
 Dim sh
 Application.PrintCommunication = False
 For Each sh In Sheets
   With sh.PageSetup
     .Zoom = False
     .FitToPagesWide = 1
     .FitToPagesTall = 1
   End With
  Next
  Application.PrintCommunication = True
  Sheets.PrintOut  
End Sub
 
Laatst bewerkt:
Code:
Sub PrintSheetsToOnePage()
    Dim ws As Worksheet

    ' Loop door alle werkbladen in de werkmap
    For Each ws In ThisWorkbook.Worksheets
        With ws.PageSetup
            ' Zet de pagina in te stellen op A4
            .PaperSize = xlPaperA4
            ' Schaal het werkblad zodat het op één pagina past
            .FitToPagesWide = 1
            .FitToPagesTall = 1
            ' Optioneel: stel andere printeigenschappen in
            '.Orientation = xlPortrait ' Portret oriëntatie
            '.PrintArea = "A1:D50"     ' Definieer een specifieke printzone
        End With
    Next ws

    ' Print alle werkbladen
    ThisWorkbook.PrintOut
End Sub
[code/]
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan