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 fonction Excel dans macro


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Par défaut Erreur fonction Excel dans macro
    Bonjour à tous

    Alors voilà, lorsque j'exécute la ligne suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VTR = Application.WorksheetFunction.HLookup(Worksheets("IRingSol").Cells(1, j).text, Worksheets("BD_Substances").Range("B1:P12"), 4)
    ,

    je reçois en retour ce message d'erreur : "Impossible de lire la propriété Hlookup de la classe WorksheetFunction".

    En fait, le but est d'aller récupérer une valeur dans la bonne colonne, en fonction de l'intitulé cette colonne.

    Je n'arrive pas à trouver d'où vient l'erreur. Quelqu'un pourrait-il m'aider?

    Merci par avance.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 357
    Par défaut
    Bonjour,

    Essaye de remplacer ton ".text" par un ".value"

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Par défaut
    J'ai déjà essayé! le résultat est le même

    Merci d'essayer de m'aider

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

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

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    Non, ce n'est pas cela, c'est parce qu'il ne trouve pas, mais le .TEXT ou le .VALUE sont inutiles.

    Je cherche la parade. minute

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 357
    Par défaut
    Effectivement l'erreur apparaît lorsque la valeur cherchée n'est pas dans le tableau
    Tu dois pouvoir utiliser "On Error" pour ignorer l'erreur

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

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

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    Voilà.

    le problème c'est parce qu'il ne trouve pas.



    Pour ton info, tu n'as pas spécifié le dernier parametre à FALSE, donc HLOOKUP assume que tu ne veux pas un excat match, donc tu récupères le nearest value, mais supposé que ton tableau est trié en ascending.

    Je confirme, il ne faut pas le .TEXT, ni le .VALUE.

    J'ai bidouillé un exemple sur mon poste de ton acs adapté à mon test file, et cela marche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Sub testoex()
     
    tr = Application.WorksheetFunction.HLookup(Worksheets("Sheet2").Cells(1, 2), Worksheets("Sheet1").Range("A1:A13"), 1)
    Debug.Print tr
     
    End Sub



    Si tu veux faire une recherche sur l'exact match, regarde le post suivant et tu trouveras comment gérer l'erreur qu'il rencontre si il ne trouve pas.

    http://www.developpez.net/forums/sho...hlight=VLOOKUP

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Par défaut
    Merci pour vos réponses!

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

Discussions similaires

  1. Utiliser une fonction excel dans une macro et proprièté range
    Par bebel9313 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/08/2007, 14h25
  2. Réponses: 4
    Dernier message: 30/08/2006, 20h33
  3. [VBA-E] Une fonction Excel dans une fonction VBA
    Par laloune dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 14/07/2006, 10h21
  4. Utilisation fonction excel dans ACCESS: Ereur de compilation
    Par mat_lefebvre dans le forum Access
    Réponses: 2
    Dernier message: 22/03/2006, 10h44
  5. Fonction EstNull dans macro Access
    Par joker vb dans le forum Access
    Réponses: 5
    Dernier message: 13/01/2006, 15h55

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