bonjour à tous,
Je m'adresse aux spécialistes de VBA / Excel
Voilà j'aimerais faire une impression globale de certaines feuilles de mon classeur dont un certain nombre doit respecter des critères pour être imprimées.
Voici ce que j'ai tapé. Cf après
Je sais que c'est bon hormis le pb suivant:
Le problème c'est que de cette manière je prends en compte uniquement la dernière feuille sélectionnée car les autres se déselectionnent au fur et à mesure.
Je sais qu'il existe la fonction Sheets(Array(" mais ici je ne peux pas l'utiliser vu les multiples conditions.
Merci d'avance pour vos solutions (multiples)
Private Sub CommandButton3_Click()
ActivePrinter = "PDFCreator sur Ne00:"
ThisWorkbook.Sheets("Présentation" ).Select
ThisWorkbook.Sheets("Sommaire" ).Select
ThisWorkbook.Sheets("TSIG2" ).Select
ThisWorkbook.Sheets("CAF 2" ).Select
ThisWorkbook.Sheets("Etude fonctionnelle" ).Select
If ThisWorkbook.Sheets("Configuration1" ).Visible = True Then
ThisWorkbook.Sheets("Configuration1" ).Select
Else
End If
If ThisWorkbook.Sheets("Configuration2" ).Visible = True Then
ThisWorkbook.Sheets("Configuration2" ).Select
Else
End If
If ThisWorkbook.Sheets("Configuration3" ).Visible = True Then
ThisWorkbook.Sheets("Configuration3" ).Select
Else
End If
If ThisWorkbook.Sheets("Configuration4" ).Visible = True Then
ThisWorkbook.Sheets("Configuration4" ).Select
Else
End If
If ThisWorkbook.Sheets("Configuration5" ).Visible = True Then
ThisWorkbook.Sheets("Configuration5" ).Select
Else
End If
If ThisWorkbook.Sheets("Configuration6" ).Visible = True Then
ThisWorkbook.Sheets("Configuration6" ).Select
Else
End If
If ThisWorkbook.Sheets("Tableau Flux" ).Range("D57" ).Value <= 10 Then
ThisWorkbook.Sheets("Tableau Flux" ).Select
Else
Erreur.Show
End If
ThisWorkbook.Sheets("Global" ).Select
ThisWorkbook.Sheets("Lexique" ).Select
ThisWorkbook.Sheets("Lexique2" ).Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("Informations" ).Select
Range("A1" ).Select
End Sub