Imprimer

Résolu
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. 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 ?
    1. Contributeur
      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+
      1. 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 ?
    2. Contributeur
      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+
      1. Contributeur
        Bonjour,
        Sub Macro()
            If Range("A1")>0 then
                Sheets("Feuil1").Select
                ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
            End If
        End Sub


        A+
        1. Contributeur
          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+