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 :

Fonction Find dans VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 14
    Par défaut Fonction Find dans VBA
    Bonjour,

    En VBA, J'ai créé un code excel avec la Fonction FIND. Mon but est de trouver dans une liste, une entreprise en particulier.

    Voici la partie de mon code concernée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Feuil1").Range("B2:B100").Find("Nom_Entreprise")
    Cela marche parfaitement mais mon but pour automatiser cette partie serait, au lieu de remplir le nom de l'entreprise à la main, de se référer à une cellule où il y a le nom d'une entreprise. Pour cela j'ai essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Feuil1").Range("B2:B100").Find("Worksheets("Feuil1").Cells(10,10).Value")
    Malheureusement cela ne marche pas. Comment résoudre le problème svp

    Merci d'avance

  2. #2
    Membre Expert Avatar de QuestVba
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2012
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 2 475
    Par défaut
    Bonsoir,

    Tu pourrais essayer avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Feuil1").Range("B2:B100").Find(what:=range("A3").value, LookAt:=xlWhole)

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 14
    Par défaut
    J'ai copié collé le code mais ça ne marche pas. Je comprend pas le A3 et le xlWhole :/

  4. #4
    Membre Expert Avatar de QuestVba
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2012
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 2 475
    Par défaut
    Hello,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    what:=range("A3").value
    Cherche la valeur qui est contenue dans la cellule A3


    Cherche la valeur exacte

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 14
    Par défaut
    Pour être complet voici la totalité de 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
    14
    Public Sub MafonctionDeRecherche()
     
        Dim c As Object
        Set c = Worksheets("BonDeCommande").Range("B2:B100").Find("AIS")
     
     
        Dim therow As Integer
        therow = c.Row
     
     
      Worksheets("Donnée").Cells(10, 10).Value = Worksheets("BonDeCommande").Cells(therow, 3).Value
     
     
    End Sub
    Une des entreprises que je cherche s'appelle AIS.
    Mais je sais que AIS je le retrouve dans une autre feuille excel nommé "Donnée" en case J2 donc j'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Public Sub MafonctionDeRecherche()
     
        Dim c As Object
        Set c = Worksheets("BonDeCommande").Range("B2:B100").Find("Worksheets("Donnée").Cells(2, 10).Value")
     
     
        Dim therow As Integer
        therow = c.Row
     
     
      Worksheets("Donnée").Cells(10, 10).Value = Worksheets("BonDeCommande").Cells(therow, 3).Value
     
     
    End Sub
    Mais ca ne marche pas alors que le premier code marche.

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    La méthode Find recherche une valeur
    En mettant entre guillemets la chaîne "Worksheets("Donnée").Cells(2, 10).Value", ce sera cette chaîne (de surcroît mal écrite) qu'il cherchera et non le contenu de la cellule J2 de la feuille Donnée.
    correction, donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set c = Worksheets("BonDeCommande").Range("B2:B100").Find What:=Worksheets("Donnée").Cells(2, 10).Value
    Corrige de la même manière toutes tes lignes utilisant la méthode Find.

Discussions similaires

  1. [E-03] Aide sur la Fonction .Find dans VBA
    Par Gunsx dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/01/2009, 22h36
  2. Aide fonction recherche dans VBA
    Par Koopa55 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 22/05/2008, 12h02
  3. fonction where dans VBA et recupération de lettre et de chiffre
    Par moimemessssssssss dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/04/2008, 21h55
  4. Intégration d'une fonction Excel dans VBA
    Par RéviAT dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/03/2008, 09h10
  5. fonction shell dans VBA
    Par dada31 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/01/2008, 09h41

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