IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème Exit sub [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2012
    Messages : 241
    Par défaut Problème Exit sub
    Bonjour,
    J'ai un souci avec le exit sub de ma macro en effet la macro ne s’exécute pas pour toutes les feuilles je ne sais pas pourquoi voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    Sub estimation()
     
    Application.ScreenUpdating = False
    Application.Calculation = xlManual
     
        Dim DebColonne As Integer
        Dim FinColonne As Integer
        Dim LigneEs As Integer
        Dim LigneFinTab As Integer
        Dim DbCalendrierNS As Integer
        Dim i As Integer
        Dim w As Integer
     
        DebColonne = Val(InputBox("Quel week renseigner ?"))
        If DebColonne = 0 Then Exit Sub
     
        LigneEs = Val(InputBox("Quel Ligne ?"))
        If LigneEs = 0 Then Exit Sub
     
     
        Sheets("Parametres").Cells(22, 2).Value = DebColonne + 5
        FinColonne = Sheets("Parametres").Cells(23, 2).Value
        FinColonneNS = Sheets("Parametres").Cells(24, 2).Value
        Sheets("Parametres").Cells(25, 2).Value = LigneEs
        LigneFinTab = Sheets("Parametres").Cells(27, 2).Value
        DbCalendrierNS = Sheets("Parametres").Cells(28, 2).Value
     
        w = Sheets("Parametres").Range("B20").Value
     
        For m = 8 To Worksheets.Count
     
            If Worksheets(m).Cells(w, 2) = "" Then Exit Sub
     
            With Worksheets(m)
     
                ' ANNEE N
                For i = DebColonne + 5 To FinColonne - 1
                    .Cells(LigneEs, i).FormulaLocal = "=INDEX(Temp1!$A$1:$DT$80;EQUIV(B" & w & ";Temp1!$A$1:$A$80;0)+1;" & i & ")"
                    '.Cells(LigneEs, i).Value = .Cells(LigneEs, i).Value
                Next i
     
                ' ANNEE N+1
                For i = DbCalendrierNS To FinColonneNS
                    .Cells(LigneEs, i).FormulaLocal = "=SI(B" & w & " = """";"""";INDEX(Temp1!$A$1:$DT$80;EQUIV(B" & w & ";Temp1!$A$1:$A$80;0)+1;" & i - 1 & "))"
                    '.Cells(LigneEs, i).Value = .Cells(LigneEs, i).Value
                Next i
     
            End With
     
        Next m
     
     
    Application.Calculation = xlCalculationAutomatic
    End Sub
    Merci pour votre aide

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    BOnjour,

    C'est certain qu'avec les lignes suivantes, si la macro ne trouve pas la vaeur recherchée, la macro va s'interrompre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        For m = 8 To Worksheets.Count
     
            If Worksheets(m).Cells(w, 2) = "" Then Exit Sub
    Tu pourrais changer pour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        For m = 8 To Worksheets.Count
     
            If Worksheets(m).Cells(w, 2) <> "" Then 'Exit Sub
     
            With Worksheets(m)
            ... et le reste
    Donc, si la cellule n'est pas vide, la macro va continuer, sinon elle va passer à la feuille suivante.

  3. #3
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2012
    Messages : 241
    Par défaut
    Je te remercie c'est parfait.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème : exit
    Par Porteuris dans le forum Débuter
    Réponses: 5
    Dernier message: 27/11/2008, 15h42
  2. [E-03] Problème Exit Sub
    Par allergique dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/10/2008, 21h51
  3. Problème d'Exit Sub
    Par DeaD78 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/06/2008, 09h53
  4. equivalent exit sub
    Par mapmip dans le forum ASP.NET
    Réponses: 1
    Dernier message: 08/03/2007, 16h51
  5. Problème de sub avec un sous formulaire
    Par SpyesX dans le forum Access
    Réponses: 5
    Dernier message: 08/03/2006, 00h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo