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 la fonction Application.match [XL-2007]


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
    Mai 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 103
    Par défaut Problème avec la fonction Application.match
    Bonjour,

    J'ai l'impression que cette fonction ne fonctionne pas tout le temps. Quelqu'un a une idée ?

    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Public Function Ligne_Top(Source_Sheet As String, Source_Ref As String) As Integer
    '
    ' Fonction de détection de début du tableau
    '
    Dim Ligne_Départ
    Ligne_Départ = Application.Match(Source_Ref, Sheets(Source_Sheet).Range("A:A"), 0)
    If IsError(Ligne_Départ) Then
       MsgBox "Aucune balise de début de tableau connu"
    Else
        Ligne_Top = Ligne_Départ
    End If
    End Function
    Merci par avance

    Etienne

  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 169
    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 169
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    J'ai l'impression que cette fonction ne fonctionne pas tout le temps. Quelqu'un a une idée ?
    Qu'entends-tu par là ?
    Pourrais-tu expliquer ce qui ne vas pas et dans quel cas.
    Par exemple si tu cherches autres choses qu'une chaîne de caractères, cette fonction ne peut pas te renvoyer un numéro de ligne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Debug.Print Ligne_Top("Feuil1", "10")
    Si une cellule de la colonne A contient 10, cette valeur ne sera pas trouvée.
    Si l'argument Source_Ref est variant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Function Ligne_Top(Source_Sheet As String, Source_Ref) As Integer
    Dans ce cas, les deux cas de figures ci-dessous fonctionneront.
    Debug.Print Ligne_Top("Feuil1", 10) ou Debug.Print Ligne_Top("Feuil1", "Toto") .
    Cependant en commentaire de ta fonction, on lit "' Fonction de détection de début du tableau".
    La fonction en question ne fait que renvoyer la position d'une valeur cherchée dans la colonne A de la feuille définie par l'argument Source_Sheet.
    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

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 103
    Par défaut
    Bonjour,

    Enfait j'ai trouvé... Enfait mon problème est qu'il me renvoyait une erreur 9 de temps en temps... car il était sur le mauvais workbook...

    Du coup, j'ai ajouté le workbook dans ma fonction du coup ca marche... Comme quoi la nuit porte conseil...

    Pour répondre à ta question, ma fonction me permet de déterminer la ligne à laquelle commence un tableau(de hauteur variable).

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

Discussions similaires

  1. [XL-2003] Problème avec la fonction Match
    Par Jinchoo dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/09/2010, 16h00
  2. Problème avec la fonction findfirst ()
    Par Angelico dans le forum Windows
    Réponses: 3
    Dernier message: 05/08/2004, 20h40
  3. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24
  4. Problème avec les fonctions
    Par jvachez dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/01/2004, 12h06
  5. [Postgresql]Problème avec les fonctions ...
    Par fet dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/10/2003, 09h04

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