Microsoft 365 Suppression caractères listes déroulantes cascade

Huggy22

XLDnaute Nouveau
Bonjour à tous.

J'utilise les listes déroulantes en cascade et je rencontre deux petits problèmes plutôt liés à l'affichage.
Dans mon fichier excel, les données sont situées dans la feuille 2 et les listes déroulantes dans les cellules A1 et B1 de la feuille 1.
Les listes déroulantes fonctionnent correctement mais je trouve que l'affichage des underscore dans les listes n'est pas très esthétique. Est-il possible de ne pas les afficher dans ma liste déroulante ?
Si je change la valeur de la cellule A1 et que je me positionne sur la cellule B1, cette dernière conserve la valeur correspondante à la précédente sélection. Est-il possible de vider la colonne B1 lorsque la valeur change en A1?

Bien cordialement,
 

Pièces jointes

  • Cascade.xlsx
    11.4 KB · Affichages: 5
Solution
Bonjour,

Dans le fichier joint ici, la ligne d'étages est corrigée. J'avais oublié un -1 dans la définition du nom Liste_Etages_Clients.
lorsqu'il n'y a qu'un étage spécifié, la liste déroulante permet tout de même de naviguer dans des zones vides
Oui, c'est fait exprès pour ne pas alourdir la formule de la définition du nom Liste_Etages_Clients.
Cette formule est matricielle et risquerait de ralentir votre fichier pour un bénéfice mineur.
Avec un identifiant client sur une seule colonne ce serait mieux, car la fonction Equiv n'aurait pas à concaténer deux colonnes pour sa recherche.
Vous pouvez mettre une mise en forme conditionnelle sur les cellules vides de la colonne 'étage' (voir fichier joint).
Dans une base de...

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier joint, avec un tableau structuré nommé 'T_Bâtiments' et 2 noms :
Bâtiments dont la définition est : =T_Bâtiments[#En-têtes]
Liste_Occupants dont la définition est : =DECALER(INDIRECT("T_Bâtiments[" & Feuil1$A1 & "]");;;MAX(1;NBVAL(INDIRECT("T_Bâtiments[" & Feuil1!$A1 & "]"))))
Une MFC colorie en orange avec police barrée la valeur de Feuil1!B si cette dernière n'est pas présente dans Liste_Occupants.

Cordialement
 

Pièces jointes

  • Cascade.xlsx
    19.9 KB · Affichages: 3

Huggy22

XLDnaute Nouveau
Bonjour,

Dans le fichier joint, avec un tableau structuré nommé 'T_Bâtiments' et 2 noms :
Bâtiments dont la définition est : =T_Bâtiments[#En-têtes]
Liste_Occupants dont la définition est : =DECALER(INDIRECT("T_Bâtiments[" & Feuil1$A1 & "]");;;MAX(1;NBVAL(INDIRECT("T_Bâtiments[" & Feuil1!$A1 & "]"))))
Une MFC colorie en orange avec police barrée la valeur de Feuil1!B si cette dernière n'est pas présente dans Liste_Occupants.

Cordialement
Merci beaucoup !

Bonne fin de journée.
 

Huggy22

XLDnaute Nouveau
Bonjour.

J'ai à nouveau un souci :-(

J'aimerai ajouter une liste déroulante avec une proposition de numéro(s) d'étage(s). J'ai tenté de le faire avec un tableau structuré mais j'ai sans cesse des messages d'erreurs.
Pour certains bâtiments, il y a plusieurs numéros d'étages et le client peut parfois porter le même nom (si c'est dans le même bâtiment, je les différencierai d'une manière ou d'une autre).
Les données relatives aux numéros des étages sont contenues dans l'onglet client. Pour la liste déroulante des numéros d'étage, elle est prévue dans l'onglet journal des clients après la colonne client.
J'ai tenté d'utiliser la concaténation mais je n'arrive à rien de concluant…

Merci d'avance pour votre patience.

Bien cordialement,

Huggy22
 

Pièces jointes

  • Cascade.xlsx
    19.3 KB · Affichages: 1

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Voici une solution par formule Nommée 'Liste_Etages_Clients'.
Avec une référence Client se serait plus simple.
Parfois en entête vous mettez 'Client' puis Bâtiment' parfois 'Bâtiment' puis 'Client'. A moins d'une raison impérieuse, décidez pour quelle structure vous optez.
Apprenez à utiliser les Tableaux Structurés. Ils vous aideront dans beaucoup de situations.


Cordialement
 

Pièces jointes

  • Cascade (1).xlsx
    25.3 KB · Affichages: 5

Huggy22

XLDnaute Nouveau
Bonjour et merci. Vous avez entièrement raison, je dois mieux structurer mes données et apprendre à utiliser les tableaux structurés m'aiderait beaucoup...
Dans votre dernier fichier, l'étage indiqué est incorrect (c'est celui de la ligne en-dessous). Par exemple, pour Pierre à Anvers, je devrais avoir l'étage 1 mais il indique l'étage 1R. J'ai tenté de vérifier la formule mais j'avoue y perdre un peu mon latin...
Un autre petit détail : lorsqu'il n'y a qu'un étage spécifié, la liste déroulante permet tout de même de naviguer dans des zones vides. Mais bon, ce n'est pas vraiment dramatique.
Merci encore,
Bien cordialement,

Huggy22
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier joint ici, la ligne d'étages est corrigée. J'avais oublié un -1 dans la définition du nom Liste_Etages_Clients.
lorsqu'il n'y a qu'un étage spécifié, la liste déroulante permet tout de même de naviguer dans des zones vides
Oui, c'est fait exprès pour ne pas alourdir la formule de la définition du nom Liste_Etages_Clients.
Cette formule est matricielle et risquerait de ralentir votre fichier pour un bénéfice mineur.
Avec un identifiant client sur une seule colonne ce serait mieux, car la fonction Equiv n'aurait pas à concaténer deux colonnes pour sa recherche.
Vous pouvez mettre une mise en forme conditionnelle sur les cellules vides de la colonne 'étage' (voir fichier joint).
Dans une base de donnée, il est fortement conseillé d'unifier les types de données dans la mesure du possible et ne pas mélanger Texte et Nombre dans une même colonne (1R : texte ; 0 : nombre).

Cordialement
 

Pièces jointes

  • Cascade (1).xlsx
    25.5 KB · Affichages: 5

Huggy22

XLDnaute Nouveau
Bonjour,

Dans le fichier joint ici, la ligne d'étages est corrigée. J'avais oublié un -1 dans la définition du nom Liste_Etages_Clients.

Oui, c'est fait exprès pour ne pas alourdir la formule de la définition du nom Liste_Etages_Clients.
Cette formule est matricielle et risquerait de ralentir votre fichier pour un bénéfice mineur.
Avec un identifiant client sur une seule colonne ce serait mieux, car la fonction Equiv n'aurait pas à concaténer deux colonnes pour sa recherche.
Vous pouvez mettre une mise en forme conditionnelle sur les cellules vides de la colonne 'étage' (voir fichier joint).
Dans une base de donnée, il est fortement conseillé d'unifier les types de données dans la mesure du possible et ne pas mélanger Texte et Nombre dans une même colonne (1R : texte ; 0 : nombre).

Cordialement
Un tout grand merci pour votre patience, c'est parfait !!!
 

Discussions similaires