Impression plusieurs pages sans ouvrir plusieurs fois la boite de dialogue

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
F
Fruitos68
Jeune membre
Jeune membre
Messages : 11
Inscrit le : 22 mai 2019
Version d'Excel : 2016

Message par Fruitos68 » 28 mai 2019, 13:49

Bonjour le Forum,

Après mettre lancer dans le VBA depuis mois d'une semaine j'aurais besoin d'un petit coup de main

J'ai codé ça :
Private Sub CommandButton1_Click()

    If CheckBox1.Value = True Then
    
    Sheets("Tableau comparatif").PageSetup.Orientation = xlLandscape
    
    Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show
    
    Sheets("Tableau comparatif").PrintOut
    
    With Worksheets("Tableau comparatif").PageSetup
    .Zoom = False
    .FitToPagesTall = 1
    .FitToPagesWide = 1
    
    
End With

    Unload Me
    
        End If
        
If CheckBox2.Value = True Then
    
    Sheets("Tableau IJSS").PageSetup.Orientation = xlLandscape
    
    Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show
    
    Sheets("Tableau IJSS").PrintOut
    
    With Worksheets("Tableau IJSS").PageSetup
    .Zoom = False
    .FitToPagesTall = 1
    .FitToPagesWide = 1
End With
    
Unload Me
    
    
    End If
    
    If CheckBox3.Value = True Then
    
    Sheets("Tableau valorisation").PageSetup.Orientation = xlLandscape
    
    Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show
    
    Sheets("Tableau IJSS").PrintOut
    
    With Worksheets("Tableau IJSS").PageSetup
    .Zoom = False
    .FitToPagesTall = 1
    .FitToPagesWide = 1
End With
    
Unload Me


Mais voilà le soucis, quand je coche les 3 cases il y a 3 fois la boite de dialogue "impression" qui s'ouvre c'est possible qu'elle ne s'ouvre qu'une seul fois pour l'impression des pages choisies?


Merci à tous :D
G
Girodo
Membre dévoué
Membre dévoué
Messages : 661
Appréciations reçues : 39
Inscrit le : 24 mars 2015
Version d'Excel : 2010

Message par Girodo » 28 mai 2019, 14:01

Salut,

Essaie ceci : (Au lieu de mettre la fonction dans chaqu'un de tes "If" je le met une fois au début) ;)
Private Sub CommandButton1_Click()

Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show

    If CheckBox1.Value = True Then
    
    Sheets("Tableau comparatif").PageSetup.Orientation = xlLandscape
    
    Sheets("Tableau comparatif").PrintOut
    
    With Worksheets("Tableau comparatif").PageSetup
    .Zoom = False
    .FitToPagesTall = 1
    .FitToPagesWide = 1
    
    
End With

    Unload Me
    
        End If
        
If CheckBox2.Value = True Then
    
    Sheets("Tableau IJSS").PageSetup.Orientation = xlLandscape
    
    Sheets("Tableau IJSS").PrintOut
    
    With Worksheets("Tableau IJSS").PageSetup
    .Zoom = False
    .FitToPagesTall = 1
    .FitToPagesWide = 1
End With
    
Unload Me
    
    
    End If
    
    If CheckBox3.Value = True Then
    
    Sheets("Tableau valorisation").PageSetup.Orientation = xlLandscape
    
    Sheets("Tableau IJSS").PrintOut
    
    With Worksheets("Tableau IJSS").PageSetup
    .Zoom = False
    .FitToPagesTall = 1
    .FitToPagesWide = 1
End With
    
Unload Me
Petit Chêne deviendra gland ! :btres:
F
Fruitos68
Jeune membre
Jeune membre
Messages : 11
Inscrit le : 22 mai 2019
Version d'Excel : 2016

Message par Fruitos68 » 28 mai 2019, 14:25

Erreur d’exécution 1004:

La méthode PrintOut de la classe worksheet a échoué :(
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message