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 avec conditions multiples


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Janvier 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Janvier 2013
    Messages : 88
    Par défaut Problème avec conditions multiples
    Bonjour.

    Voici ma macro avec un vlookup ou il y a des conditions multiples :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    With ThisWorkbook.Worksheets("base")
        For i = 0 To .Columns(5).Find("*", , , , xlByColumns, xlPrevious).Row - 1
            If WorksheetFunction.CountIf(Workbooks(str).Worksheets("Asset Management").Range("A1:A5000"), .Range("I6").Offset(i, -8)) > 0 Then
            If Workbooks(str).Worksheets("Asset Management").Range("L1:L2100") = "Retention" Then
                .Range("I6").Offset(i, 0) = WorksheetFunction.VLookup(.Range("I6").Offset(i, -8), Workbooks(str).Worksheets("Asset Management").Range("A1:AZ29701"), 16, False)
            End If
            Else
                .Range("I6").Offset(i, 0) = 0
            End If
        Next i
    End With
    J'ai un souci sur le code en gras.

    Sauriez vous pourquoi?

    En vous remerciant par avance,

    Bien cordialement

  2. #2
    Membre très actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 472
    Par défaut
    Bonjour,

    Essaye de mettre tes conditions entre parenthèses

  3. #3
    Membre confirmé
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Janvier 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Janvier 2013
    Messages : 88
    Par défaut
    C'est à dire ?

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 472
    Par défaut
    Voilà un exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If (IsNull(rs!Notes) = False) And (IsNull(rs!RNotes) = False) And  (rs!Notes = True) And (rs!RNotes = True) Then

    Et en générale :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim B1 as Boolean, B2 as Boolean, B3 as Boolean, B4 as Boolean
    B1 = IsNull(rs!Notes)
    B2 = IsNull(rs!RNotes)
    B3 = rs!Notes
    B4 = rs!RNotes 
    If ((B1 = False) And B2 = False) And (B3 And B4) Then
    En gros mets tes critères entre parenthèses

  5. #5
    Membre confirmé
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Janvier 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Janvier 2013
    Messages : 88
    Par défaut
    Désolé mais ça semble une évidence dans mon cas.

    Ta réponse est inutile j'aimerai dire.
    Merci quand même.

  6. #6
    Membre extrêmement actif
    Avatar de NVCfrm
    Homme Profil pro
    Administrateur Système/Réseaux - Developpeur - Consultant
    Inscrit en
    Décembre 2012
    Messages
    1 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur Système/Réseaux - Developpeur - Consultant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 037
    Billets dans le blog
    5
    Par défaut
    Bonsoir.

    J'ai un souci sur le code en gras.
    Tu ne peux comparer un objet range renvoyant un plage de plus d'une cellule avec ce code en gras.
    Utilise une fonction Worksheet si tu veux CountIf que tu peux comparer avec le nombre de lignes de ta plage.

Discussions similaires

  1. [MySQL] Problème avec condition if + is_int
    Par JackBeauregard dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 25/08/2006, 14h12
  2. Réponses: 6
    Dernier message: 15/06/2006, 15h15
  3. Calcul requête avec conditions multiples
    Par Phullbrick dans le forum Access
    Réponses: 7
    Dernier message: 18/04/2006, 13h45
  4. Calculs dans une requete avec conditions multiples
    Par Sha1966 dans le forum Access
    Réponses: 3
    Dernier message: 13/01/2006, 15h18
  5. Réponses: 22
    Dernier message: 05/07/2005, 00h04

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