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 de recherche


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Educateur Animateur
    Inscrit en
    Février 2013
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Educateur Animateur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 132
    Par défaut Problème de recherche
    Bonjour,

    J'ai un fichier excel piloté par des userform... dans l'une d'elles je souhaiterai affecter des recherches spécifiques...

    est-il possible de rechecher via un CommandButton l'ensemble des lignes contenant une valeur donnée !?

    Disons que je veux appuyer sur "CommandButton3" pour consulter la liste de toutes les lignes contenant un "Nom" selectionné dans "ComboBox1" ET un "Prénom" selectionné dans "ComboBox2" !?

    Cette liste peut-elle s'afficher dans une MsgBox !?


    Merci d'avance

  2. #2
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Bonjour,

    Alors si j'ai bien compris, tu as un UserForm avec deux TextBox.
    Tu souhaiterais que via un CommandButton dans ce UserForm tu recherches dans une colonne les valeurs que tu as rentrés dans tes TextBox.

    Si c'est cela, je te propose le code suivant :
    1) Pour afficher ton UserForm avec un CommandButton dans ta feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
        UserForm1.Show
    End Sub
    2) Tu réalises ton UserForm avec deux TextBox et un CommandButton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub CommandButton1_Click()
    Dim str As String
     
    UserForm1.Hide
     
        With Worksheets("Feuil1")
            For i = 0 To .Columns(3).Find("*", , , , xlByColumns, xlPrevious).Row
                If InStr(.Range("C1").Offset(i, 0).Value, TextBox1) And InStr(.Range("C1").Offset(i, 0).Value, TextBox2) Then
                    str = str & vbCrLf & .Range("C1").Offset(i, 0).Value
                End If
            Next i
        End With
     
        MsgBox str
    End Sub
    Le deuxième code recherche dans "Feuil1", de la première ligne à la dernière ligne non vide de la colonne 3 (soit la colonne C) toutes les cellules qui possède la valeur de ta TextBox1 ET la valeur de ta TextBox2.

    Elle affiche à la fin la valeur entière de toutes les cellules correspondantes.

    A savoir : la fonction InStr recherche les valeurs si elles sont séparées d'espaces.

    Tiens moi au courant !

  3. #3
    Membre confirmé
    Homme Profil pro
    Educateur Animateur
    Inscrit en
    Février 2013
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Educateur Animateur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 132
    Par défaut
    En fait mes deux valeurs à chercher ne sont pas dans la même colonne...

    Je te mets le fichier en PJ...

    à l'UserForm1 choisi "Consulter un nom" --> ça ouvre UserForm4

    A ce moment là, après avoir selectionné nom, prénom et classe, quand je clique sur "consulter", je voudrais sortir la liste de toutes les lignes correspondant à ce nom, prénom et classe...
    Fichiers attachés Fichiers attachés

  4. #4
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Bah... tu n'avais pas grand chose à changer de mon code !

    Ajoute ça à ton UserForm4 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Sub CommandButton1_Click()
    Dim i, j As Integer
    Dim str As String
     
    UserForm4.Hide
     
        With Worksheets("Retenues")
            For i = 0 To .Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
                If .Range("A1").Offset(i, 0).Value = ComboBox1 And .Range("B1").Offset(i, 0).Value = ComboBox2 And .Range("C1").Offset(i, 0).Value = ComboBox3 Then
                    For j = 0 To .Rows(.Range("A1").Offset(i, 0).Row).Find("*", , , , xlByColumns, xlPrevious).Column
                        str = str & .Range("A1").Offset(i, j).Value & " "
                    Next j
                    str = str & vbCrLf
                End If
            Next i
        End With
     
        MsgBox str
    End Sub
    Et dis moi si ça te convient !

  5. #5
    Membre confirmé
    Homme Profil pro
    Educateur Animateur
    Inscrit en
    Février 2013
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Educateur Animateur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 132
    Par défaut
    C'est ça

    Merci beaucoup... maintenant à moi de bosser sur ma mise en forme...

  6. #6
    Membre confirmé
    Homme Profil pro
    Educateur Animateur
    Inscrit en
    Février 2013
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Educateur Animateur
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 132
    Par défaut
    Je reviens vers toi... suite à ton dernier code...

    Je ne dois pas être très doué, mais dans la MsgBox qui s'affiche, je ne souhaite pas toutes les infos...

    J'ai l'impression que tu as généré un résumé automatique c'est ça ?

    Comment puis-je selectionner les infos à afficher !?

    Merci encore

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

Discussions similaires

  1. Problème de rechercher au lieu d'ouvrir
    Par socrate1975 dans le forum Windows XP
    Réponses: 3
    Dernier message: 26/01/2006, 15h21
  2. problème de recherche dans une base de donnée mysql
    Par Xini28 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 24/10/2005, 18h00
  3. Problème de recherche
    Par ptidoudou02 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 05/10/2005, 16h49
  4. problème de recherche dans une base de données
    Par bouzid_mehdi dans le forum Bases de données
    Réponses: 2
    Dernier message: 19/07/2005, 06h47
  5. Problème de recherche dans une BD
    Par ledevelopeur dans le forum Bases de données
    Réponses: 5
    Dernier message: 28/04/2004, 09h49

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