Reprise de code aprés exit sub

Résolu
Bonjour,
j'ai crée une macro qui m'imprime les tableaux d'un fichier excel si la somme est supérieur à Zéro, mais dés qu'un tableau à une somme égale à zéro la macro s'arrête aprés exit sub.
comment faire pour que la macro continue aprés exit sub, c'est à dire imprimer les autres tableaux.
Merci d'avance
Configuration: Windows XP
Firefox 3.0.10

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonsoir,

    Réaménage ton code comma ca :

    If Range("D15").Value <> 0 Then
    Range("A1:D15").Select
    Selection.PrintOut Copies:=3, Collate:=True
    end if
    If Range("D32").Value <>0 Then
    Range("A16:D32").Select
    Selection.PrintOut Copies:=3, Collate:=True
    end if
    If Range("D48").Value <> 0 Then
    Range("A34:D48").Select
    Selection.PrintOut Copies:=3, Collate:=True
    end if
    If Range("D64").Value <> 0 Then
    Range("A50:D64").Select
    Selection.PrintOut Copies:=3, Collate:=True
    end if
    End Sub
    1. Bonjour,

      il faut que tu fasses une boucle.

      par exemple si tu sais combien tu as de tableaux
      a= nbre tableaux

      for b=0 to a
      'tu mets ton code qui cherche tes tableaux et les imprime si c >0
      next b
      1. Bonjour
        Voici mon code il bloque quand par exemple D15=0 l'exécution de la macro prend fin grâce à "Exit SUB", ce que je cherche comment je pourrai faire continuer la macro.

        Sub Imprimertout()
        '
        ' Imprimertout Macro
        ' Macro enregistrée le 31/07/2009 par Bigcortex
        '
        ' Touche de raccourci du clavier: Ctrl+t
        '
        If Range("D15").Value = 0 Then
        Exit Sub
        End If
        Range("A1:D15").Select
        Selection.PrintOut Copies:=3, Collate:=True
        If Range("D32").Value = 0 Then
        Exit Sub
        End If
        Range("A16:D32").Select
        Selection.PrintOut Copies:=3, Collate:=True
        If Range("D48").Value = 0 Then
        Exit Sub
        End If
        Range("A34:D48").Select
        Selection.PrintOut Copies:=3, Collate:=True
        If Range("D64").Value = 0 Then
        Exit Sub
        End If
        Range("A50:D64").Select
        Selection.PrintOut Copies:=3, Collate:=True

        End Sub