VBA pour imprimer une sheet

ross57100 Messages postés 16 Statut Membre -  
ross57100 Messages postés 16 Statut Membre -
Bonjour
Je débute en VBA et j'aurai besoin de vos connaissances.
je souhaiterai qu'en fonction d'une cellule complétée sue la feuille 1, la feuille 2 ou 3 ou 4 ou 5 s'imprime.
Je m'explique
Cellule A1 = "Tempo" => la feuille tempo s'imprime
Cellule A1 = "Perm" => la feuille perm s'imprime
Cellule A1 = "Grille" => la feuille grille s'imprime
Cellule A1 = "Grille + Tempo" => les feuilles Grille et Tempo s'impriment
Est-ce possible?
Merci

1 réponse

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    adaptez le nom de la feuille:

    nom separes par +

    Sub Impression()
        Dim TSheets
        
        With Worksheets("feuil1")
            'recherche d'au moins un +
            If InStr(1, .Range("A1"), "+") Then
                'mise en tableau des onglet a imprimer
                TSheets = Split(Worksheets("feuil1").Range("A1"), "+")
                'boucle pour impression
                For x = 0 To UBound(TSheets)
                    'Trim pour enlever les espaces devant ou/et derriere le nom d'onglet
                    Worksheets(Trim(TSheets(x))).PrintOut Copies:=1
                Next x
            ElseIf .Range("A1") <> "" Then      ' un seul onglet
                Sheets(Trim(.Range("A1"))).PrintOut Copies:=1
            End If
        End With
    End Sub
    0
    1. ross57100 Messages postés 16 Statut Membre
       
      Merci
      0