Liste déroulante Excel
Résolu/Fermé
Véro
-
31 mai 2016 à 16:38
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 3 juin 2016 à 16:28
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 3 juin 2016 à 16:28
A voir également:
- Liste déroulante Excel
- Liste déroulante excel - Guide
- Excel liste déroulante en cascade - Guide
- Si et excel - Guide
- Google sheet liste déroulante - Accueil - Guide bureautique
- Excel supprimer liste déroulante - Forum Excel
4 réponses
The_boss_68
Messages postés
930
Date d'inscription
dimanche 15 novembre 2015
Statut
Membre
Dernière intervention
9 janvier 2025
178
31 mai 2016 à 22:26
31 mai 2016 à 22:26
bonsoir Véro,
Sans fichier joint, c'est difficile de t'aider, à moins d'être devin
Cordialement
Sans fichier joint, c'est difficile de t'aider, à moins d'être devin
Cordialement
Raymond PENTIER
Messages postés
58801
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 janvier 2025
17 264
1 juin 2016 à 22:12
1 juin 2016 à 22:12
Oh ! ça va être compliqué !
C'est toi qui as défini comme source la plage =Data!$J$2:$J$696
Il est donc normal et inévitable que la liste déroulante affiche toutes les cellules de J2 à J696 ...
Il faudrait que tu modifies cette plage au fur et à mesure de tes saisies !
C'est toi qui as défini comme source la plage =Data!$J$2:$J$696
Il est donc normal et inévitable que la liste déroulante affiche toutes les cellules de J2 à J696 ...
Il faudrait que tu modifies cette plage au fur et à mesure de tes saisies !
Raymond PENTIER
Messages postés
58801
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 janvier 2025
17 264
Modifié par Raymond PENTIER le 1/06/2016 à 22:28
Modifié par Raymond PENTIER le 1/06/2016 à 22:28
Après divers essais infructueux, je conclus que le plus simple est encore de remplacer
""par
"utilisé", dans tes formules en colonne J ; ainsi tu n'auras pas la gêne d'avoir des espaces blancs ...
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
Modifié par michel_m le 2/06/2016 à 07:49
Modifié par michel_m le 2/06/2016 à 07:49
Bonjour Véro du kebek
Dans la feuille data
changer la formule "" devient 1 (ou un autre nombre)
ta validation de données "liste" dans la feuille "fiche projet-colonne D" à recopier de ligne 2 à 273
formule dans "source"
Michel
Dans la feuille data
changer la formule "" devient 1 (ou un autre nombre)
=SI(NB.SI('# fiche projet '!D2:D273;$I2)=1;1;$I2)J2:J696 nommé "liste"
ta validation de données "liste" dans la feuille "fiche projet-colonne D" à recopier de ligne 2 à 273
formule dans "source"
=DECALER(liste;NB.SI(liste;1);0;NB.SI(liste;"<>"&1);1)
Michel
Bonjour,
Après vérification approfondie... la formule fonctionne, mais de ce que je peux constater elle fonctionne seulement si je sélectionne les choix de la liste déroulante en ordre.
Exemple: si j'ai déjà sélectionné le choix 2016-01 et 2016-02, mon prochain choix sera 2016-03. ce qui est correct. Où j'ai un problème c'est si je veux sélectionner 2016-08 au lieu de 2016-03, et que je me place dans une autre cellule pour faire une nouvelle sélection, le choix 2016-08 que je viens d'attribuer à la cellule précédente est toujours disponible.
Je ne sais pas si c'est clair comme explication, mais est-ce qu'il y a une manière d'arriver à mes fins?
Après vérification approfondie... la formule fonctionne, mais de ce que je peux constater elle fonctionne seulement si je sélectionne les choix de la liste déroulante en ordre.
Exemple: si j'ai déjà sélectionné le choix 2016-01 et 2016-02, mon prochain choix sera 2016-03. ce qui est correct. Où j'ai un problème c'est si je veux sélectionner 2016-08 au lieu de 2016-03, et que je me place dans une autre cellule pour faire une nouvelle sélection, le choix 2016-08 que je viens d'attribuer à la cellule précédente est toujours disponible.
Je ne sais pas si c'est clair comme explication, mais est-ce qu'il y a une manière d'arriver à mes fins?
Raymond PENTIER
Messages postés
58801
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 janvier 2025
17 264
>
Véro
2 juin 2016 à 23:56
2 juin 2016 à 23:56
Oui ; j'ai déjà vu quelque chose de semblable dans une autre discussion ...
Je me souviens seulement que c'était autrement plus compliqué que la formule de Michel ! Et aucun de nous n'aurait pu deviner que tu risquais de choisir tes items dans le désordre ... Mes essais se basaient, comme Michel l'a fait, sur la fonction DECALER, que je maîtrise pas suffisamment pour avoir abouti à une formule, mais qui aurait eu le même effet. Alors pas de regret ...
Mes salutations amicales à vous tous.
Je me souviens seulement que c'était autrement plus compliqué que la formule de Michel ! Et aucun de nous n'aurait pu deviner que tu risquais de choisir tes items dans le désordre ... Mes essais se basaient, comme Michel l'a fait, sur la fonction DECALER, que je maîtrise pas suffisamment pour avoir abouti à une formule, mais qui aurait eu le même effet. Alors pas de regret ...
Mes salutations amicales à vous tous.
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
3 juin 2016 à 06:47
3 juin 2016 à 06:47
bonjour Véro
oui, il y a une possibilité mais en VBA....
OK ou pas OK ?
oui, il y a une possibilité mais en VBA....
OK ou pas OK ?
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
>
Véro
3 juin 2016 à 16:28
3 juin 2016 à 16:28
Si un jour tu te décides
Option Explicit
'-----------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Static Flag As Boolean, Lig As Integer
If Not Intersect(Target, Range("D2:D270")) Is Nothing And Not Flag Then
Flag = True
With Sheets("data")
Lig = .Columns("J").Find(Target, .Range("J1"), xlValues).Row
.Cells(Lig, "J").ClearContents
.Range("dispo").SpecialCells(xlCellTypeBlanks).Delete
End With
Flag = False
End If
End Sub
comment installer ?
copier cette macro
clic droit sur le nom de l'onglet de la feuille "data" (en bas de l'écran)
visualiser le code
coller
1 juin 2016 à 03:50
1 juin 2016 à 14:19
Je n'arrive pas télécharge mon fichier... de quelle façon il m'est possible de le faire ?
Véro
1 juin 2016 à 18:59
1 juin 2016 à 19:14
Voici mon fichier : http://www.cjoint.com/c/FFbrij1T0tK
Ce que j'aimerais faire se situe dans la colonne D de l'onglet # fiche projet. J'ai déjà fait une liste déroulante à l'aide de validation de données.
Ce que j'aimerais faire maintenant que je n'arrive pas à faire c'est d'éliminer les blancs dans ma liste déroulante.
Quand j'utilise une des données de la liste déroulante pour l'attribuer à un projet(ligne), celui-ci disparait, mais un espace blanc reste toujours visible dans ma liste déroulante. C’est cet espace blanc que j'aimerais voir disparaitre.
Est-ce que mon explication est plus claire?
Merci,