Listes dynamiques en cascades, RECHERCHEV plages dynamiques
Bonjour à toutes et à tous,
Je travaille actuellement sur un formulaire de saisie pour la création d'un base de données. Je rencontre actuellement deux difficultés dans ce formulaire. J'ai simplifié mon formulaire de saisie pour n'extraire que les points sensibles (fichier joint).
Problème 1 :
Je ne réussit pas à réaliser les listes en cascades. Je pense avoir identifié la source du problème: le fait que le deuxième niveau de liste soit dynamique avec référence indirecte semble incompatible avec la mise en cascade. Dans mon exemple sur le fichier joint, le groupe de couleur se sélectionne dans la cellule bleu, et la couleur définitive dans la cellule jaune. Hors cette deuxième liste dans la cellule jaune ne fonctionne pas.
Les listes on été rendues dynamique grace à la fonction suivante : =DECALER(Listes!$K$1;0;0;NBVAL(Listes!$K:$K);1) (dans le cas de la liste Bleu)
D'après ce que je comprends, un telle fonction est incompatible avec la fonction INDIRECT.
Est ce que je me trompe? Quelle rectification ou modification pourrait résoudre ce problème.
Problème 2 :
Je ne réussit pas à réalise une RECHERCHEV pour la même raison semble-t-il. La cellule en rose et sensée dans tous les cas renvoyer l’information directement à droite de la couleur sélectionnée dans la cellule verte (ou jaune dans le cas ou le problème précédent serait résolut). Là aussi le problème semble venir de l'utilisation de la fonction INDIRECT avec des plage de référence dynamique crées à l'aide de la fonction DECALER.
Les cellules oranges ne servent qu'à la vérification des listes dynamiques et plages de références dynamiques.
Je reste à disposition si je n'ai pas été assez clair dans la formulation de mon problème.
Merci d'avance pour votre aide
Rebonjour à tous,
En continuant mes recherches et essais, j'ai trouvé la solution au premier problème.
Jusque là je passais par le gestionnaire des nom en assignant un nom à chaque plage, la liste faisait alors référence à ce nom.
Or dans mon cas réel, et non pas celui simplifié que j'ai posté, mes liste étaient situées dan sles même cellule mais sur des feuilles différentes portant le nom de groupe (groupe de couleur dans l'exemple).
La solution trouvée est la suivante:
Au lieu de passer par le gestionnaire de nom pour la deuxième liste, la référence de la deuxième liste doit être:
=DECALER(INDIRECT($D$5&"!$H$2");0;0;NBVAL(INDIRECT($D$5&"!$H:$H"))-1;1)
où $D$5 est la cellule contenant la première liste, la valeur choisie est le nom de la feuille où se situe la liste désirée
et $H$2 et la première valeur de la liste, laquelle est située sur la colonne $H:$H
En espérant avoir été clair et que cela puisse servir à un autre.
Je continue mes recherches pour le deuxième problème et reste ouvert à toute proposition.
(je précise que je souhaite éviter au maximum de passer par un code VBA afin d'alléger au maximum l'utilisation de l'outil)
Merci
bonjour
en passant.....
un essai
la presentation est respectée
indirect n'est plus utilisé
tout (ou presque est dynamique ) ;la notion de bdd est introduite
une des cascades devient facultative
cordialement