Imprimer

Résolu
bailey -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

J'ai cherché partout sur le forum, mais je n'ai pas trouvé.

Voilà mon souci, je souhaiterais imprimer un classeur uniquement si une cellule donnée (exemple: A1) est au dessus de zéro et donc, par définition, que cela ne s'imprime pas si elle est égale à zéro (programme de facturation en fin de mois)

D'avance merci de votre aide.
Configuration: Windows Vista
Internet Explorer 7.0

8 réponses

  1. bailey
     
    Merci je vais essayer cela ce soir.
    0
  2. bailey
     
    Soit c'est moi (ce doit être cela) mais ca ne fonctionne pas.

    Question: faut il que je répète la macro à chaque feuille ?
    0
  3. bailey
     
    Ca me donne une erreur "1004" l'impression ne fonctionne pas.
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Faut bien sûr adapter le nomFeuille et la cellule de test.
    Si ça ne va pas met le code de ta macro dans un poste suivant.
    A+
    0
    1. bailey
       
      Voilà le code:

      Sub ImprimeToutesFeuil()
      Dim F As Integer
      If Sheets("1").Range("E44") > 0 Then 'A adapter
      For F = 1 To Worksheets.Count
      Sheets(F).PrintOut
      Next F
      End If
      End Sub

      Le nom de la feuille est 1 et la cellule test est E44

      Comment faire pour imprimer toute les feuilles dont la cellule E44 est au dessus de zéro ?
      0
  6. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bon, par acquit de conscience j'ai testé et ça fonctionne.
    Le seul truc que je peu voir c'est où tu à mis la macro ?
    Elle doit être dans un module général, par ex Module1.
    A+
    0
  7. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour,
    Sub Macro()
        If Range("A1")>0 then
            Sheets("Feuil1").Select
            ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
        End If
    End Sub


    A+
    -1
  8. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Re,
    Si tu veux imprimer toutes les feuilles...
    Sub ImprimeToutesFeuil()
    Dim F As Integer
        'Il faut que les mises en page et la zone à imprimer
        'de chaque feuille soit faite au préalable.
        If Sheets("NomFeuille").Range("A1") > 0 Then 'A adapter
            For F = 1 To Worksheets.Count
                Sheets(F).PrintOut
            Next F
        End If
    End Sub

    Tu doit mettre la macro dans un module général, par exemple Module1
    A+
    -1