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 :

User forms pour extraire des données en fonction d'un pré-choix et d'une listbox


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Chef d'équipê
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chef d'équipê
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut User forms pour extraire des données en fonction d'un pré-choix et d'une listbox
    Bonjour tout le monde !

    Je débute avec les macros !

    J'aimerais extraire des données d'un tableau en fonction d'un pre choix avec un option bouton !
    En fonction de ce choix, on affiche une liste box de ce pré-choix et en fonction de ce pré-choix on affiche les données correspondantes à la ligne !
    Avec le fichier joint ce sera plus compréhensible !

    Merci d'avance pour votre aidetest.xlsx

  2. #2
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Points : 1 441
    Points
    1 441
    Par défaut
    bonjour,
    il y a 2 "sortes" de bouton option :
    le OptionButton (qui est rond) choisir une seule option parmi plusieurs
    le CheckBox (qui est carré) choisir une option de plus

    si tu as plusieurs "pré-choix" tu peu utiliser OptionButton pour sélectionner LE "pré-choix" qui va bien
    mais tu peu aussi utiliser CheckBox pour sélectionner LES "pré-choix" qui formeront un "pré-choix" unique qui va bien aussi

    dans tous les cas, pour savoir si le bouton Check ou Option est validé : if Bouton.value then... (if Bouton.value=true)

    voilà pour le bouton

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  3. #3
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Points : 1 441
    Points
    1 441
    Par défaut
    bonjour,
    En fonction de ce choix, on affiche une liste box de ce pré-choix et en fonction de ce pré-choix on affiche les données correspondantes à la ligne !
    cette simple phrase laisse entrevoir de multiple possibilités et donc des codages multiples

    on affiche une liste box de ce pré-choix
    si c'est juste de l'info (pas de sélection dans la liste) , tu peu afficher dans une TextBox multiligne

    TextePreChoix1 = "Liste du " & chr(34) & "pré-choix 1" & chr(34) & vbcrlf & ligne1 & vbcrlf & ligne2

    TextBox.value = TextePreChoix1

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Chef d'équipê
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chef d'équipê
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour JP,

    tout d'abord, merci pour ton aide, mais ça devient compliqué ! en fait je viens de m'apercevoir que la forms que j'avais commencé n'est pas le fichier, je renvois donc le fichier !
    C'est bien un option button que j'ai besoin, lorsque je clique sur O85, il doit m'afficher dans la list box les lignes D11 à D17test.xlsx
    puis en fonction d'un ligne choisi dans la list box, il doit m'afficher les cellules correspondantes à la ligne

  5. #5
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Points : 1 441
    Points
    1 441
    Par défaut
    bonjour,
    nickel, c'est clair

    dans le code de form
    Appel du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub O85_Click()
        'si O85.value = true
        'appelle List_PreChoix() avec la liste des lignes à choisir
        'une autre solution que je prefere serait List_PreChoix(1)
        '1 étant le numéro du préchoix qui sera selectionné par "select case"
        If O85 Then Call List_PreChoix("D11:D17")
    End Sub
    "Remplissage" de la ListBox par le "PréChoix"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub List_PreChoix(PlageLigne As String)
        'pour chaque Cellule de la plage "PlageLigne"
        'ajouter la valeur de la cellule (représentée par C)
        For Each C In Range(PlageLigne)
            ListBox1.AddItem C.Value
        Next
    End Sub
    Trouver le numéro de Ligne des Data
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Private Sub ListBox1_Click()
        'ListIndex est le numéro en partant de ZERO
        'de la ligne sélectionnée dans la ListBox
        'la ligne 3 indique 2...donc ListIndex + 1 = 3 = Ligne 3
        'la ligne 3 correspond à la ligne D13 soit 10 de plus
        'LigneDataNum = Ligne 3 + 1 + 10
        'LigneData = Range("A" & ListBox1.ListIndex + 1 + 10).Value
        '
        LigneDataNum = ListBox1.ListIndex + 1 + 10
        '
    End Sub
    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  6. #6
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Points : 1 441
    Points
    1 441
    Par défaut
    re,

    Nom : Animation (1).gif
Affichages : 173
Taille : 142,1 Ko

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Chef d'équipê
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chef d'équipê
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour JP,

    J'ai collé le code dans ma user forms en changeant le nom de mon bouton O85, mais cela ne fonctionne pas, ça bug !!
    En fait je viens de m'apercevoir que la forms n'était toujours pas sauvegardé, c'est chose faite, voici le bon fichier
    test2.xlsm

Discussions similaires

  1. Besoin d'aide pour extraire des données
    Par marsumo dans le forum VBScript
    Réponses: 1
    Dernier message: 04/06/2008, 09h55
  2. Réponses: 6
    Dernier message: 05/05/2008, 15h19
  3. Réponses: 1
    Dernier message: 07/04/2008, 16h11
  4. comment faire pour extraire des données ?
    Par bernardgiraud dans le forum Macros et VBA Excel
    Réponses: 22
    Dernier message: 31/08/2007, 00h37
  5. [GML] Scripts shell pour extraire des données d'Oracle
    Par diamonds dans le forum XQUERY/SGBD
    Réponses: 1
    Dernier message: 28/09/2006, 07h04

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