XL 2010 Chercher des donnees en fonction d'autre donnees

M.D

XLDnaute Occasionnel
Bonjour,

Je me permets de vous recontacter afin d’avancer mon projet
Pour faire simple et être bien compris
J’ai une base de données qui se trouve à l’onglet « Enr.retard », j’ai un usderform « Userform 1 », qui se trouve à l’onglet « choix ».
J’aimerai à partir de cette base de données pouvoir sélectionner dans un premier le numéro de la semaine puis le nom de l’apprenant et le tout venant s’afficher sur la feuille choix.

Par ailleurs, sur ce forum j’ai trouvé un exemple qui pourrait bien me convenir intitulé « Filtre par UserForm »dont l’auteur est Mariel 91 aidé par Modeste. J’ai donc essayé de l’adapter cet exemple à mon projet, mais je ne parviens pas à corriger une erreur. Un message d’erreur m’alerte sur un dysfonctionnement dans ma procédure qui est le suivant :

Erreur d’execution ‘9’
L’indice n’appartient pas à la sélection.

Je joins mon fichier

Pouvez-vous me venir en aide
Avec mes plus grands remerciements.

M.D
 

Pièces jointes

  • Dossier_eleve.xlsm
    68.9 KB · Affichages: 45

CHALET53

XLDnaute Barbatruc
Bonjour,
Peut-être une approche pour sélectionner à partir de la saisie d'une lettre
Je n'ai pas utilisé ta combobox mais une zone de texte
Si tu saisis C dans cette zone, les noms (qui commencent tous par code) s'affiche dans la listbox
une sélection dans la listbox affiche les données dans les tesxtboxs

a+
 

Pièces jointes

  • M.D Dossier_eleve.xlsm
    66.2 KB · Affichages: 43

M.D

XLDnaute Occasionnel
Bonsoir à tous et particulièrement à Chalet 53

Je viens de lire votre réponse. Merci d’avoir consacré un peu de votre temps.

La solution que vous apportez dans l’userform-retard me satisfait bien, néanmoins mon souci de l’userform 1 reste entier. Si vous avez une solution, je suis preneur.

Merci d’avance.


M.D
 

natorp

XLDnaute Accro
Bjr M.D et Chalet

Remplacer
Code:
With Sheets("Enr.retard")
    derligne = .Cells(Rows.Count, 1).End(xlUp).Row
    For cpt = 0 To 2
        For lig = 5 To derligne
            liste(.Cells(lig, tabloCol(cpt)).Value) = ""
        Next lig
        Me.Controls("Cb" & cpt + 1).List = Application.Transpose(liste.keys)
        liste.RemoveAll
    Next cpt
End With

par :
Code:
With Sheets("Enr.retard")
    derligne = .Cells(Rows.Count, 1).End(xlUp).Row
    For cpt = 0 To 1
        For lig = 5 To derligne
            liste(.Cells(lig, tabloCol(cpt)).Value) = ""
        Next lig
        Me.Controls("Cb" & cpt + 1).List = Application.Transpose(liste.keys)
        liste.RemoveAll
    Next cpt
End With

La ligne : For cpt = 0 To 1

Cordialement, Gérard
 

M.D

XLDnaute Occasionnel
Bonsoir à tous et tout particulièrement à Chalet 53

Tout d’abord merci pour réactivité pour venir en aide

Après avoir mis en application votre procédure, deux petites choses à modifier si possible :

1°) Après avoir sélectionner le numéro de la semaine, comment faire pour que seulement le nom ou les noms appartenant à la semaine s’affichent dans la combobox apprenant ?

2°) Pourquoi, toutes les informations sont supprimées après avoir sélectionner une donnée dans la combobox apprenant.

Je rejoins mon fichier après les diverses corrections

Merci d’avance pour votre aide. Bonne soirée.

M.D
 

Pièces jointes

  • M.D Dossier_eleve.xlsm
    67.2 KB · Affichages: 51

CHALET53

XLDnaute Barbatruc
bonjour,
la demande concerne quel userform : Userform _retard ou userform1
Dans ma proposition, j'ai laissé la combobox1 : elle est sans intérêt avec l'approche par saisie d'un caractère dans la textbox (mot)
Quelles informations disparaissent ?

a+
 

M.D

XLDnaute Occasionnel
Bonjour à tous et particulièrement à Chalet 53

Ma demande concerne l’userform1

Après laisser mon userform1, je coche la case en haut (semaine), puis je sélectionne une semaine, jusqu’à là tout va bien.

Puis, je coche le seconde case (apprenant).

A ce stade premier souci. Tous les noms s’affichent de la colonne B de la base de données (Enr.retard) J’aimerai que seuls les noms de la semaine sélectionnée précédemment apparaissent.

Second souci, toutes les infos qui étaient apparues lors de la sélection de la semaine sont supprimées.


Encore un grand merci de votre aide

M.D
 

CHALET53

XLDnaute Barbatruc
re,
J'ai un peu de mal avec le code que tu utilises
toutefois :
La liste que tu affiches dans apprenant a été fabriquée dès l'ouverture de l'usf à partir de la feuille En Retard avec tous les noms qui y figurent
Tu devrais la contruire à partir de la feuille choix qui ne contient que les individus liés à la semaine choisie dès lors que tu coches la case choix apprenant

L'instruction : .[A5].CurrentRegion.Clear
me paraît mal placé puiqu'elle met à blanc toutes les zones proches de cette cellule. Comme le choix de la semaine a rempli parfois plusieurs lignes, quand tu choisis apprenant, cette instruction efface tout.
 

M.D

XLDnaute Occasionnel
Bonsoir à tous et à Chalet 53


Malgré votre aide très précieuse et du temps que vous avez consacré pour me répondre à mes interrogations, je n’ai pas réussi à trouver la procédure pour mener à bien mon projet.
Reprenant mon travail, faute de temps je pense que je vais devoir mettre en stand-by mon projet.

En tout cas merci de votre aide .

M.D
 

Discussions similaires

Statistiques des forums

Discussions
311 741
Messages
2 082 058
Membres
101 883
dernier inscrit
Don esteban