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 :

VBA-Excel: Rechercher une cellule dans tout le classeur CONTENANT le texte "Blabla"


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 30
    Points : 17
    Points
    17
    Par défaut VBA-Excel: Rechercher une cellule dans tout le classeur CONTENANT le texte "Blabla"
    Je fais un classeur Excel de mes comptes persos et je cherche à faire une petite macro de recherche.

    J'ai trouvé comment faire cette recherche pour l'intitulé EXACT (nom recherché = nom de cellule) mais pas pour le CONTENU du nom de la cellule (nom recherché = contenu dans la cellule) .

    Si quelqu'un pouvait m'aider.

    Merci d'avance et @ bientôt.

  2. #2
    Membre averti Avatar de mordrhim
    Inscrit en
    Avril 2007
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Avril 2007
    Messages : 270
    Points : 314
    Points
    314
    Par défaut
    tu veux faire ça par macro ?
    à étudier la fonction find
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Find(What:="Texte à chercher", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
            :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, atchCase:= _
            False)
    La fonction te rend la cellule qui contient "Texte à chercher" si cependant tu as plusieurs fois le texte, il faut la lancer autant de fois qu'il y a d'occurence pour toute les trouver.

    Sinon il y a la technique du CTRL+F dans excel si tu ne veux pas faire ça par macro.

    PS: Je donne ma solution non experte, toute critique est toujours bonne à prendre.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 30
    Points : 17
    Points
    17
    Par défaut
    Merci pour ta réponse, ça ma donné une diection.

    Finalement, je suis parti là-dessus, mais il me fout une erreur quand je lui demande de remplir ma textbox ???

    Merci pour votre aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    With Worksheets("Janvier").Range("C11:C200")
    Set c = .Find(txt_rechercher.Text, LookIn:=xlValues)
        If Not c Is Nothing Then
            firstAddress = c.Address
            Do
                txt_resultat.Text = txt_resultat.Text + Chr(13) + Str(c.Adress) + vbTab + Str(c.Value)
                Set c = .FindNext(c)
            Loop While Not c Is Nothing And c.Address <> firstAddress
        End If
    End With

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par jokair
    .. mais il me fout une erreur...
    et elle à un nom cette erreur ..?

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 30
    Points : 17
    Points
    17
    Par défaut
    bien vu...

    Désolé, euh, erreur débogage 438 sur cette ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    txt_resultat.Text = txt_resultat.Text + Chr(13) + Str(c.Adress) + vbTab + Str(c.Value)
    Ce qui m'énerve, c'est que je sens que c'est tout bête...
    Et ça plante pas sur l'objet de ma question mais sur comment remplir ma satanée Textbox...

    M'enfin... J'y retourne !
    @+

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Points : 451
    Points
    451
    Par défaut
    C'est quoi "Adress"? Ca serait pas plutot avec 2 "d" : Address comme tu l'as ecrit un peu plus haut...
    Citation Envoyé par jokair
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    txt_resultat.Text = txt_resultat.Text + Chr(13) + Str(c.Adress) + vbTab + Str(c.Value)

  7. #7
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    +1
    Certainement c.address
    Remplace Str(c.Adress) par c.address, pas besoin de str

Discussions similaires

  1. [VBA][Excel]Copier une feuille dans un nouveau classeur
    Par illight dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/10/2020, 12h51
  2. [XL-2003] Macro rechercher le contenu d'une cellule dans tout le feuillet
    Par laboss dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/03/2014, 15h20
  3. Compter une cellule dans tout un classeur
    Par Hilsen dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 06/10/2011, 16h08
  4. [VBA-E] Recherche de cellules dans feuille
    Par cyber_N dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/05/2006, 10h38
  5. [Excel] choisir une cellule dans une formule
    Par arcane dans le forum Excel
    Réponses: 1
    Dernier message: 24/03/2006, 18h05

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