Supprimer une ligne via listbox [Résolu/Fermé]

Signaler
Messages postés
39
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
4 mars 2017
-
Messages postés
39
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
4 mars 2017
-
Bonjour,
Étant très très novice en VBA je reviens vers ce fabuleux forum pour encore vous demander votre aide.
1/ Mon fichier Excel a une feuille "DataGestion" qui s'alimente au fur et à mesure par un autre Userform1.
2/J'aimerais en cas d'erreur de saisie, lorsqu'on appui sur le bouton supprimer, pouvoir:
-Choisir dans un ComboBox1 une date du tableau
-Que les lignes complètes du tableau seulement avec cette date apparaissent
-Choisir la ligne que je veux supprimer
-Bouton1 supprime la ligne choisi

Ci-joint fichier: https://www.cjoint.com/c/GCdnPY4Ub3O

Si en plus vous pourriez mettre en commentaire l'aide à la compréhension du code.
Merci par avance

3 réponses

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 187
Bonjour,

Voici ton classeur avec le combobox encodé selon ta demande

https://www.cjoint.com/c/GCdo1HIKnxl

je ne t'ai pas mis de bouton 1 car il te suffit de sélectionner la ligne à supprimer dans le combobox.
Messages postés
39
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
4 mars 2017

Bonjour, et merci pour ton aide gb,
J'ai eu un peu de mal à saisir le mode de fonctionnement du fait qu'il faut choisir la date et sur le même ComboBox apparait après les lignes souhaités.

Si par hasard il existait un moyen de les faire apparaitre sur listbox et après suppression.

Merci encore une fois et bonne journée.

Lolo
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 187
re
Si par hasard il existait un moyen de les faire apparaitre sur listbox et après suppression.
Comme tu as parlé uniquement de combobox, j'ai fait avec.
Pourquoi tu les veux dans une listbox après suppression : tu veux supprimer ou garder car une listbox c'est très volatile.
Messages postés
39
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
4 mars 2017

Re,
Je me suis certainement mal exprimé au départ.
Au départ mon idée était d'appeler un Userform dans lequel via un ComboBox j'aurai choisi une date du tableau et donc affiché sur une ListBox les lignes suivant cette date.
Après en choisissant tel ligne je l'aurai supprimer par un bouton.

Lolo
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 187
Bonjour,

Effectivement, ta question initiale n'évoquait nullement un Userform, mais avec le code que je t'avais mis tu avais tout pour le faire comme ceci

https://www.cjoint.com/c/GCeid0AFlJl
Messages postés
39
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
4 mars 2017

Bonjour et merci gb pour ton aide.
J'avais commencé à adapter ton premier code.
Mais au vu du dernier fichier transmis, je reste sans voix, au vu de mes petites connaissances.
Merci encore.
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 187
Bonjour,

au vu de mes petites connaissances.
Rassures-toi, tout le monde a commencé avec peu et c'est bien normal : le principal c'est de progresser à son rythme.

Pour que ton combo soit trié même si tes dates ne le sont pas, j'ai oublié de mettre l'index et tu peux le rajouter si tu veux.
              Me.ComboBox1.AddItem cel.Value, idc

Tu pourras vérifier ainsi que si tu rajoutes en fin de fichier une date ancienne elle sera à sa place dans le combo.
Bon courage pour la suite et n'oublies pas que c'est en pratiquant que l'on progresse.
Messages postés
39
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
4 mars 2017

Re,
J'ai modifie la feuille DataGestion pour me rajouter une colonne d’où je sors le mois et l'année de la date en "C".=SI(C2<>"";TEXTE(C2;"mmmm-aa");"")
En modifiant le code pour qu'il accède sur cette colonne je limite donc mes dates.
Mais l'idée de trier OK.
Merci.
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 187
Re,
En modifiant le code pour qu'il accède sur cette colonne je limite donc mes dates.
Tu risques des surprises car ta nouvelle colonne ne contient plus des dates mais du texte représentant une date alors que si ta formule était
=SI(C2="";"";C2)
avec un format colonne "mmmm-aa" tu gardais tes dates.
Messages postés
39
Date d'inscription
mardi 5 mai 2015
Statut
Membre
Dernière intervention
4 mars 2017
>
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020

Bizarrement le texte est reconnu en tant que date dans le code.
Exemple: février-17 dans la ComboBox me renvoie toutes les dates du mois dans la ListBox.