Reprise de code aprés exit sub

Résolu
bigcortex Messages postés 6 Statut Membre -  
bigcortex Messages postés 6 Statut Membre -
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

  1. melanie1324
     
    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
  2. melanie1324
     
    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
    0
  3. bigcortex Messages postés 6 Statut Membre
     
    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
    0
  4. bigcortex Messages postés 6 Statut Membre
     
    Bonjour Mélanie bravo ça marche, Merci.
    Ciao.
    0