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 :

Else sans If ou End If sans bloc If


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Oenologue
    Inscrit en
    Juin 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Oenologue
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2011
    Messages : 79
    Par défaut Else sans If ou End If sans bloc If
    Bonjour à tous,

    Je rencontre un problème dont je ne me sors pas tout seul ....

    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
    Public Sub mfc_alertes()
     
    Dim nbLignes, i As Integer
    Dim ref1 As String
    Dim msDensite, msTemp, cons1, cons2, cons3, cons4 As Integer
    Dim TabEssais As Object
     
    Set TabEssais = Worksheets("DATA").Range("TableauEssais")
    nbLignes = Worksheets("SAISIE").Range("C65536").End(xlUp).Row + 1
     
    '--- On boucle sur toutes les modalités en cours de suivi
    For i = 2 To nbLignes
     
        msDensite = Range("E" & i).Value                             '--- Récupération de la densité du jour
        msTemp = Range("F" & i).Value                                '--- Récupération de la température du jour
        ref1 = Range("A" & i).Value                                  '--- Récupération référence de la modalité
        cons1 = WorksheetFunction.VLookup(ref1, TabEssais, 4, False) '--- Stockage Température de consigne
        cons2 = WorksheetFunction.VLookup(ref1, TabEssais, 5, False) '--- Stockage densité de nutrition 1
        cons3 = WorksheetFunction.VLookup(ref1, TabEssais, 6, False) '--- Stockage densité aération
        cons4 = WorksheetFunction.VLookup(ref1, TabEssais, 7, False) '--- Stockage densité de nutrition 2
     
        '--- Coloration des cellules aération et nutrion 1 en fonction de la densité
        If (msDensite >= cons3 - 10 And msDensite <= cons3 + 10) Then
            Range("J" & i & ":K" & i).Select
                With Selection.Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .Color = 5287936
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
        ElseIf (msDensite < cons3 - 10 And msDensite > cons3 + 10) Then
            Range("J" & i & ":K" & i).Select
                With Selection.Interior
                    .Pattern = xlNone
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
        ElseIf (msDensite > cons3 + 10 And msDensite - Range("H" & i).Value <= cons3 - 10) Then
            Range("J" & i & ":K" & i).Select
                With Selection.Value = "Anticiper"
                With Selection.Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .Color = 49407
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
        Else
     
        End If
    Next i
     
    End Sub
    Dans la boucle ci-dessus j'ai voulu introduire des conditions et je pense que les With / End With mettent le bazar.

    J'ai une erreur de compilation sur le dernier Else qui si je vire me fait une erreur sur End If

    J'ai l'impression pourtant que c'est tout bon ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Septembre 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 53
    Par défaut
    Bonjour,

    Il manque un End With dans le dernier Else If.

  3. #3
    Membre confirmé
    Homme Profil pro
    Oenologue
    Inscrit en
    Juin 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Oenologue
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2011
    Messages : 79
    Par défaut
    Citation Envoyé par gambi Voir le message
    Bonjour,

    Il manque un End With dans le dernier Else If.
    Ben là merci j'avais le nez dessus et même pas vu

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

Discussions similaires

  1. End if sans bloc if
    Par bernard26 dans le forum VBA Access
    Réponses: 3
    Dernier message: 08/01/2017, 22h35
  2. [XL-2010] Erreur de compilation: End If sans bloc If - Next sans For
    Par Dédé6621 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/08/2016, 18h41
  3. [XL-2010] End If sans bloc if
    Par stef94 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 23/01/2015, 16h39
  4. [XL-2007] End If sans bloc If
    Par AKMMM dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/08/2014, 16h26
  5. [XL-2010] End If sans bloc If
    Par statista dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/01/2011, 14h47

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