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 :

Recherche de ligne [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 112
    Par défaut Recherche de ligne
    Mes AMIS DU FORUM , Bonjour et Bonne Semaine,

    Dans un USF , je charge une Combobox provenant de la colonne A d'une Feuille . Puis je selectionne une valeur de la combobox que je charge dans une variable. Soit VALPROD = 'NOM Combobox".Value pour un futur traitement.
    Je cherche a récuperer le N0 de ligne dans la feuille correspondant à la valeur de VALPROD ......
    Malgre plusieurs essais je ne trouve pas la solution.
    Pourriez vous m'aider ????

    Cordialement GDS35

  2. #2
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2009
    Messages
    1 794
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 86
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 794
    Par défaut
    Bonjour,

    En principe la fonction EQUIV(Valeur_Cherchée;Tableau_Recherche;0)

    Argument 1 : Valeur cherchée pour vous = ValProd
    Argument 2 : Tableau de recherche = la colonne du tableau qui contient la valeur cherchée
    Argument 3 : 1, 0 ou -1 0 = valeur exacte
    Le résultat est le numéro de la ligne dans le tableau de recherche.

  3. #3
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,
    autre solution est d'ajouter une colonne dans la combobox avec le N° de ligne
    et de récupérer ensuite, ou passer par "Find"
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 112
    Par défaut re : recherche de ligne
    Merci a RJAMIN et CASEFAYERE de vos reponse ,

    Je ne vois pas comment apres plusieurs essais ecrire le code ?
    Une Idee ???
    Merci Cordialement GDS35

  5. #5
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2009
    Messages
    1 794
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 86
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 794
    Par défaut
    Re,

    Un peu de lecture pourrait vous aider peut-être.

    http://silkyroad.developpez.com/excel/indexequiv/

    Bon travail

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 112
    Par défaut RE: recherche de ligne
    merci , de ton post

    mais c'est le cod en vba que je n'arrive pas a realiser

    cordialement et encore merci gds35

  7. #7
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    exemple :
    Ton combobox se nomme "combobox1, tes données vont de A2 à A20
    dans l'évènement userform_initialize si tu utilise un USF, ou dans un evenement du combobox (controle activex), s'il est directement sur la feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim lg As Long
    ComboBox1.ColumnCount = 2
    For lg = 2 To 20
        ComboBox1.AddItem Range("a" & lg)
        ComboBox1.Column(1, ComboBox1.ListCount - 1) = lg
    Next lg
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 112
    Par défaut RE RECHERCHE LIGNE
    Merci de ton aide dans l'USF initialize j'ai entre ton code.
    a l'execution je tombe sur l'erreur 70 acces refuse ?????

    Cordialement GDS35

  9. #9
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Comme je ne sais pas grand chose sur ta feuille, il faut peut-être traduire mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim lg As Long 'variable qui servira pour la boucle
    ComboBox1.ColumnCount = 2 'nombre de colonnes dans le combo mais change le nom de celui-ci s'il n'est pas bon
    For lg = 2 To 20' un exemple jusque 20
        ComboBox1.AddItem Range("a" & lg) '1ere colonne si les données sont en A et i tu es sur la bonne feuille, sinon déclares ta feuille tu verras le code avec "with" ci-dessous
        ComboBox1.Column(1, ComboBox1.ListCount - 1) = lg 2eme colonne
    insérant le numéro de ligne
    Next lg'fin de la boucle
    avec with
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim lg As Long
    nomcombo.ColumnCount = 2
    With sheets("nom de ta feuille")
       For lg = 2 To 20
           nomcombo.AddItem .Range("a" & lg)
           nomcombo.Column(1, ComboBox1.ListCount - 1) = lg
       Next lg
    end with
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 112
    Par défaut Re recherche de ligne
    Encore grand merci de ton aide casefayere.

    En cherchant bien dans mon cerveau de moineau , voila ce que j'ai pondu pour alimenter mon bebe pour la suite .

    j'ai mis dans une variable "VALPROD" la valeur de ma Combobox puis
    j'ai recherche la ligne en faisant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LigneProd = Range("A2:A65536").find(VALPROD,lookat:=xlwole).Row


    et en faisant un msgbox de ligneProd il me renvoi bien le n0 de ligne correspondant.

    Merci encore d'avoir passe de ton temps sur mon probleme.

    Des + cordialement GDS35

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

Discussions similaires

  1. Gridview : recherche de ligne et pagination
    Par gefcookie dans le forum ASP.NET
    Réponses: 4
    Dernier message: 10/04/2007, 19h24
  2. Recherche une ligne en fonction d'une date
    Par c+cool dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 20/09/2006, 16h30
  3. [VBA-E] rechercher une ligne pour remplacer?
    Par zouille dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 31/12/2005, 11h31
  4. Rechercher une ligne vide
    Par nico-pyright(c) dans le forum Traitement d'images
    Réponses: 7
    Dernier message: 22/12/2005, 18h10
  5. Fonction de recherche de ligne...
    Par Zenol dans le forum Langage
    Réponses: 6
    Dernier message: 05/12/2005, 20h26

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