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 :

Erreur match avec vlookup imbriqué


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2011
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 86
    Par défaut Erreur match avec vlookup imbriqué
    Bonjour,

    Dans le cadre de mon travail, j'essaye de construire un code vba pour déterminer la position d'une valeur en fonction du résultat d'un recherchev, soit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    colonne_structure = WorksheetFunction.Match(WorksheetFunction.VLookup(Sheets("Base Données Dépenses").Cells(ligne, 4), Sheets("Arbre Analytique").Range("A:Q"), 14, False),  Sheets("Structure SA ENCC").Range("3:3"), 0)
    Ici, mon Vlookup va chercher un numéro, et va chercher ce numéro dans une liste pour ramener le résultat d'une colonne.
    Ce résultat peut être une valeur numérique ou du texte.
    Ensuite, je cherche ce résultat dans un autre tableau, une ligne plus précisément, et je souhaite avoir la position de mon résultat dans cette ligne (soit la colonne où se trouve ce résultat).

    J'ai ensuite essayé d'imbriqué le tout, mais j'obtiens une erreur 1004 impossible de lire la propriété de la classe worksheetfunction pour match.

    Ce qui est certain, c'est que j'ai bien un résultat.
    En l’occurrence, le numéro chercher dans le vlookup est le 102. Le résultat a ramené est le 93111, et ce résultat se trouve dans la colonne 115 de ma ligne 3.

    Si je remplace mon vlookup par la valeur 93111 dans le match me trouve bien 115.
    Et si je cherche 102 avec mon vlookup il me trouve bien 93111.
    Je ne comprends pas pourquoi l'addition des deux ne fonctionne pas.

    Merci pour votre aide

    Amariel

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pour facilité ta recherche, tu devrais découper ta formule en plusieurs lignes et dès que ton résultat sera satisfaisant tu peux passer à l'imbrication.
    As-tu testé la formule manuellement en Excel car une autre solution serait de passer par la fonction Evaluate

    Un exemple avec Evaluate
    La formule dans Excel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =EQUIV(RECHERCHEV(BaseA!A4;Arbre!$A$2:$F$8;2;FAUX);Structure!$A$1:$C$1;0)
    Son traduction en anglais (seule langue comprise par le VBA)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =MATCH(VLOOKUP(BaseA!A4,Arbre!$A$2:$F$8,2,FALSE),Structure!$A$1:$C$1,0)
    Ce qui donne en VBA avec Evaluate
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Evaluate("MATCH(VLOOKUP(BaseA!A4,Arbre!$A$2:$F$8,2,FALSE),Structure!$A$1:$C$1,0)")
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. Erreur avec vlookup dans VBA
    Par jasonpolakow dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/10/2012, 21h10
  2. [XL-2007] Erreur 424 avec VLOOKUP
    Par Duddy dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 26/08/2009, 12h14
  3. AWK - Match avec While + substr = erreur
    Par ssc37 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 11/12/2008, 10h32
  4. pas d'erreur N/A avec Vlookup
    Par doli100 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/10/2007, 17h54
  5. [MySQL] Erreur SQL 1064 : Requête imbriquée avec jointure !
    Par patchankito dans le forum Langage SQL
    Réponses: 5
    Dernier message: 31/01/2006, 10h37

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