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 :

excel vba condition sur deux colonnes


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 4
    Points
    4
    Par défaut excel vba condition sur deux colonnes
    Bonjour,
    J'ai un petit problème à résoudre avec un code vba :
    Je voudrais pouvoir récupérer le numéro de la ligne qui vérifie cette condition : lorsque dans une colonne A une valeur Va est atteinte, et que dans une autre colonne B la valeur Vb est atteinte. J'ai trouvé une solution sous excel à l'aide des fonctions :index(), equiv() et si() mais je n'arrive pas à la transcrire en vba.

    Serait-il possible d'avoir un petit coup de pouce?

    Merci
    Thibaut

  2. #2
    Membre émérite Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 392
    Points : 2 985
    Points
    2 985
    Par défaut
    Salut,

    as-tu essayé de faire Macro - >Enregistrement nouvelle macro et puis de faire F2 sur la/les cellules ou ta/tes fonctions(s) se trouve(nt).

    Dans le module généré, tu verras certainement du code qui t'aideras.

    J'espère que ce n'est pas trop simpliste.

    A+
    (\ _ /) Cordialement G@dz
    (='.'=)

    (")-(") Vous avez des neurones. Sollicitez-les. . Si vous êtes aidé, pensez à Voter.

  3. #3
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour,

    Quelque chose de ce style ?
    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
    Sub test()
    Dim i As Integer, r As Integer
     
    For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(i, 1) = "Va" Then
            If Cells(i, 2) = "Vb" Then
                r = Rows(i)
                Exit For
            End If
        End If
    Next
     
    MsgBox "la ligne contenant Va et Vb est : " & r
     
    End Sub
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  4. #4
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 4
    Points
    4
    Par défaut déja essayé
    Merci pour ta réponse, mais j'ai déja essayé d'utiliser le code correspondant mais lorsque je veux utiliser la fonction avec un Application.WorksheetFunction.index par exemple, cela ne fonctionne pas.

  5. #5
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 4
    Points
    4
    Par défaut on y est presque
    j'ai testé le code, et j'ai un message du genre : incompatibilité de type...c'est exactement ça que je veux faire.

  6. #6
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Je crois que j'ai fait une petite boulette au niveau de la ligne trouvée, essaye comme ceci
    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
    Sub test()
    Dim i As Integer, r As Integer
     
    For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(i, 1) = "Va" Then
            If Cells(i, 2) = "Vb" Then
                r = i '<-- modif
                Exit For
            End If
        End If
    Next
     
    MsgBox "la ligne contenant Va et Vb est : " & r
     
    End Sub
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

  7. #7
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 4
    Points
    4
    Par défaut ok
    En enlevant le rows() et en utilisant directement la valeur de i, ça fonctionne bien.

    Merci!

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

Discussions similaires

  1. [AC-2007] Erreur 462 sur du VBA Excel une fois sur deux
    Par lio33 dans le forum VBA Access
    Réponses: 6
    Dernier message: 16/04/2013, 09h41
  2. [AC-2003] Condition de NON doublon sur deux colonnes de facon simultanee :
    Par Bonero dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 26/01/2012, 14h28
  3. Réponses: 7
    Dernier message: 08/08/2011, 11h42
  4. [XL-2007] Comparaison sur deux colonnes excel plus traitement
    Par guiltyspark dans le forum Excel
    Réponses: 5
    Dernier message: 04/03/2011, 10h53
  5. [VBA-E] Minimum d'une colonne avec condition sur autre colonne
    Par Currahee dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/05/2007, 17h01

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