Impression "complexe" sur EXCEL

Résolu
Bonjour,
Voici mon problème: je possède un fichier Excel avec plusieurs feuilles, les 5 premières feuilles servent à remplir les suivantes donc je ne veux pas les sélectionner lors de l'impression. De plus, le nombre des feuilles à imprimer est variable! (En fait, c'est une liste et grâce à des macro je supprime ou non les feuilles, et à la fin j'imprime les feuilles qui restent.)
Sachant que je veux commander l'impression par un simple bouton, comment doit-je procéder?

Merci !

3 réponses

  1. Bonjour,
    En sélectionnant à la main toutes les feuilles que tu veux imprimer (utiliser la touche CTRL ou Maj selon le cas), tu peux lancer directement l'impression en une seule manipulation (la case feuilles sélectionnées étant activée dans la fenêtre d'impression.
    A+
    pépé
    -1
    1. Contributeur
      Salut le forum

      J'ai bien lu :
      Sachant que je veux commander l'impression par un simple bouton, comment doit-je procéder?

      Mytå
      0
    2. Bonjour,

      Bonne remarque Myta, merci pour ta réponse pépé35530 mais effectivement je veux que l'impression soit commander par un bouton car ce sera un fichier utilisé par des personnes ne connaissant pas du tout Excel et je veux aller au plus simple.

      Merci.
      0
  2. bonsoir,
    avec macros, utiliser PrintOut
    bonne suite
    -1
    1. Contributeur
      Salut le forum

      Très succinct comme solution :)

      Mytå
      0
    2. re
      dans ma mesure où toutes les feuilles doivent etre imprimées ceci devrait suffire , après avoir mis un bouton (controle activeX)
      Private Sub CommandButton1_Click()  
      Dim nf As Long  
      For nf = 1 To Sheets.Count  
        Sheets(nf).PrintOut  
      Next nf  
      End Sub

      bonne soirée
      0
    3. Merci d'avoir essayé mais justement je ne veux pas imprimer toute les feuilles!
      0
    4. Contributeur
      Bonjour,
      excusez l'incruste
      dans la acro de ccm81
      tu remplaces
      For nf = 1 To Sheets.Count
      par
      For nf = 6 To Sheets.Count
      puisque tu ne veux pas imprimer les 5 premières
      0
    5. Merci pour ton incruste, ça marche! C'était simple en final mais encore fallait-il le trouver, merci à vous.
      0
  3. Contributeur
    Salut le forum

    Tu peux t'inspirer de ceci, en ajoutant des conditions pour l'ajout des feuilles. (Méthode Add)

    Sub Imprimer()
    Dim Tablo As New Collection
    Dim I As Byte
    
    Tablo.Add "Feuil1"
    Tablo.Add "Feuil2"
    
    For I = 1 To Tablo.Count
        Sheets(Tablo(I)).PrintOut , , 1
    Next I
    
    End Sub
    

    Mytå
    0