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 :

Création userform pour recherche de données dans un classeur


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut Création userform pour recherche de données dans un classeur
    bonjour à tous,
    je viens vers vous pour soliciter votre aide parce que je suis plus que novice dans ce domaine....; créer une userform pour faire apparaitre dans cette même fenêtre le résultat je vous joint un pdf ou j'essai de vous expliquer mon cas

    et je sais même pas si cela va vous paraitre clair,
    voici la PJ
    Merci d'avance
    Images attachées Images attachées

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Points : 319
    Points
    319
    Par défaut
    Bonjour,

    Un début de piste avec le fichier joint.
    Fichiers attachés Fichiers attachés

  3. #3
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    j'ai pus voir ce prog et c'est vraiment stupefiant, c'est parfait c'est ce qu'il me fallait pour le scan des fichiers avec remonté des noms de feuilles et de colonnes des classeur, un grand merci franchement...

    maintenant reste plus qu'a résoudre l'affichage d'une recherche de chaine de caractere via une textbox et avoir le resultat dans une case qui donne l'information recherchée associé à la colonne

    tu crois que tu pourrais m'aider Goldstar?

    Un petit complément d'info s'impose il faudrait que les infos de la première ligne du tableau ( hors entête ) quand on selectionne une feuille sans forcement selectionner la colonne, car la selection de la colonne serait pour aprés comme un filtre en faite, s'affiche dans une case blanche avec la possibilité de pouvoir entrer un Num de ligne pour en visualiser les infos avec chaque colonne associé, je suis desolé c'est un peu compliqué je pense

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Points : 319
    Points
    319
    Par défaut
    j'espere que ca va aller.
    Fichiers attachés Fichiers attachés

  5. #5
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    J'ai bien reçu le fichier , j'ai essayé de le lire et de comprendre le code, mais en vain... Ca va venir... Donc je l'ai testé et il est super par contre il y a la case recherche qui ne fonctionne pas si je rentre une donnée il ne m'affiche rien alors que j'aimerais qu'il m'affiche dans chaque case correspondant a la colonne les données de la ligne tu crois que tu peux encore me venir en aide,



    En tout cas tu as fais un boulot monstre... Et je t'en remerci

    Et les cases d'affichage des données des colonnes il faudrait que ca soit une seule grosse case avec juste les nom des collonnes sur la premiere ligne c'est possible? Merci deja pour tout ce que tu as fait

  6. #6
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Points : 319
    Points
    319
    Par défaut
    Bonjour,

    Je ne comprend pas ce que tu veux exactement pour les "case colonne".

    Peu tu me faire un dessin ou autre pour m'expliquer le resultat final.

  7. #7
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Voila le fichier….

    Une fois le document sélectionné, j’aimerais pouvoir cliquer sur « RECHERCHE » sans forcement devoir entrer un mot pour avoir en visu toute les lignes si c’est possible….
    Et pour ce qui est d’une recherche précise en entrant un mot, il faudrait qu’en plus de me faire ressortir la ligne il me mette les noms de colonnes systématiquement en première ligne, j’ai déjà fais une petite ébauche mais je me demande s’il est possible de double-cliquer sur la ligne de cette userform pour atteindre les données sur la feuille et je sais pas si c’est possible avec un code de pouvoir agrandir ou réduire automatiquement la fenêtre d’affichage du résultat suivant le nombre de colonnes 5 ou 20

    Je sais pas si j’ai été très clair mais j’avoue que des fois moi aussi je perds le file
    Fichiers attachés Fichiers attachés

  8. #8
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Points : 319
    Points
    319
    Par défaut
    Pour alimenter la liste avec tous les enregistrements de la feuille


    code a placer dans un bouton (ic nom du bouton =cmd_recherche)

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
     
    Private Sub cmd_recherche_Click()
     
    Dim monFichierAppli As String, monFichierSource As String, feuilleSource As String
    Dim cpt_col As Integer, derColonne As Integer, nb_col As Integer
     
    monFichierAppli = "AIDE.xls"
    monFichierSource = UserForm1.TextBox_nom_fic
    feuilleSource = Me.ComboBox_feuilles
     
    derColonne = Workbooks(monFichierSource).Sheets(feuilleSource).Range("A1").End(xlToRight).Column
     
    maListe = "ListBox1"
     
    Controls(maListe).Clear
    Controls(maListe).ColumnCount = derColonne  'Nbre de colonnes
    'Controls(maListe).ColumnWidths = "120;10" 'Largeur de la colonne
     
    'Mise en place des noms de colonne
    For cpt_col = 1 To derColonne
        nomColonne = Sheets(feuilleSource).Cells(1, cpt_col)
        If cpt_col = 1 Then
             Controls(maListe).AddItem nomColonne
        Else
            Controls(maListe).List(Controls(maListe).ListCount - 1, cpt_col) = nomColonne
        End If
    Next cpt_col
     
     
    For cpt = 2 To Sheets(feuilleSource).Range("A" & Rows.Count).End(xlUp).Row
        For cpt_col = 1 To derColonne
            If cpt_col = 1 Then
             Controls(maListe).AddItem Sheets(feuilleSource).Cells(cpt, cpt_col)
        Else
            Controls(maListe).List(Controls(maListe).ListCount - 1, cpt_col) = Sheets(feuilleSource).Cells(cpt, cpt_col)
        End If
        Next cpt_col
    Next cpt
     
     
     
     
     
    End Sub

  9. #9
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Il me colle un bug a cette ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    derColonne = Workbooks(monFichierSource).Sheets(feuilleSource).Range("A1").End(xlToRight).Column
    Ca y est ca marche mais probleme il ne m'affiche que 4 colonnes alors que sur mon tableau j'en ai 5 , et bravo pour les nom de colonnes

  10. #10
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Points : 319
    Points
    319
    Par défaut
    c'est pas la taille de la liste qui est trop petite ?

  11. #11
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Si c'etait ca je l'ai corrigé mais comment recuperer les nom de colonne sur la recherche d'une seule ligne

    Et pour le double clique sur la ligne tu as une solution pour atteindre la donnée sur le fichier source,? Désolé de t'embeter feanchement

  12. #12
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Points : 319
    Points
    319
    Par défaut
    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
    20
    21
    22
    23
    24
     
     
     
    'ICI C'est la sélection au Double Click & Sortie du UserForm
    Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
     
    Dim ligne As Integer
     
    nomfeuille1 = Me.ComboBox_feuilles
    fichierSource = Me.TextBox_nom_fic
     
     
    For i = 1 To ListBox1.ListCount - 1
        If ListBox1.Selected(i) Then
            ligne = i + 1
            Workbooks(fichierSource).Sheets(nomfeuille1).Activate
            Sheets(nomfeuille1).Rows(ligne).EntireRow.Select
            Me.Hide
        End If
    Next i
     
     
     
    End Sub

  13. #13
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Bon je te refais un schema de ce qui serait bien je vais voir mon boss pour savoir ce qu'il veut vraiment et je te ferait un beau schema et je t'expliquerais en detail si ca ne te derrange pas je t'envois ca demain

    Voici le résultat final de mon userform



    En premier, j’aimerais que quand une recherche est effectué et qu’il n’y a aucun résultat qu’il y ai une boite de dialogue ‘msgbox’ disant « aucun résultat »

    Ensuite que les noms des colonnes s’affichent automatiquement dans leurs textbox ‘colonne*’ respective, format – « intitulé colonne : »


    Ensuite que quand il y a des résultats que l’on puisse double cliquer sur une des infos de façon a atteindre la ligne concernée sur le fichier chargé

    Sur les deux petite flèche a droite du usf après sélection de l’info serait il possible de pouvoir monter ou descendre a la ligne précédente ou suivante dans le tableau et que les infos dans les textbox se rafraichissent

    en plus il y à plein de petit bug que j'arrive pas a cerner

    J’espère que c’est un peu plus clair pour toi
    Fichiers attachés Fichiers attachés

  14. #14
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2013
    Messages : 9
    Points : 3
    Points
    3
    Par défaut
    Snifff plus personne ne veut me répondre...

Discussions similaires

  1. Réponses: 5
    Dernier message: 28/01/2015, 14h42
  2. Réponses: 1
    Dernier message: 10/06/2014, 17h05
  3. [Toutes versions] Recherche de données dans une feuille pour les copier dans une autre
    Par mattdogg97 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/02/2011, 14h22
  4. Réponses: 3
    Dernier message: 05/12/2005, 02h30
  5. Réponses: 2
    Dernier message: 28/10/2005, 12h52

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