Bonjour à tous & à toutes, bonjour
@Toucan72
Je reviens sur le sujet, ça m'ennuyait de te laisser sur un "on ne peut pas sans VBA"
Comme le dit
@sylvanu, on ne peut pas créer de feuille par formule.
Mais ... on peut les créer en copiant un modèle.
Comme tu disposes d'
EXCEL 365 tu peux utiliser les fonctions matricielles dynamique (FILTRE, UNIQUE, TRIER ...)
Leurs résultats s'ajustent automatiquement lorsque les données auxquelles elles se réfèrent sont modifiées.
Une seule formule génère le nombre de lignes et de colonnes correspondant au résultat (pas besoin de tirer vers le bas ou à droite)
Pour faciliter leur usage, j'ai transformé ta liste complète en un Tableau Structuré que j'ai nommé "
ListeLivres".
J'ai ajouté une feuille "Accueil" elle présente
- la liste des thèmes de ta liste complète
(formule =TRIER(UNIQUE(ListeLivres[Thèmes]))) en A5
- la liste des titres
(formules =TRIER(UNIQUE(ListeLivres[Titre])) en C5
- Le nombre d'exemplaires
=NB.SI(ListeLivres[Titre];C5#) en D5 (le # pour toute la plage générée par la formule en C5)
Puis j'ai créer une feuille par thème qui reprend pour chaque thème les titres en plusieurs exemplaires apparaissant dans ce thème. Le thème est écrit en $A$1 la formule qui extrait les titres concernés est
=UNIQUE(FILTRE(ListeLivres;
(ListeLivres[Thèmes]=$A$1)*
(NB.SI(ListeLivres[Titre];ListeLivres[Titre])>1)))
Les critères
- (ListeLivres[Thèmes]=$A$1) le thème doit être égal au thème en A1
- (NB.SI(ListeLivres[Titre];ListeLivres[Titre])>1) le titre doit être en plus d'un exemplaire
- Multiplication pour signifier "ET"
Si ta liste complète évolue, les listes par thème évolueront automatiquement
Pour t'alerter lorsqu'un nouveau thème n'a pas sa feuille, dans la liste des thèmes de la feuille "Accueil" ce nouveau thème apparaît en blanc sur fond rouge grâce à la Mise en Forme Conditionnelle avec la formule
ET($A5<>"";ESTERREUR(FEUILLE(INDIRECT("'"&A5&"'!$A$1"))))
D'autre MFC gèrent le quadrillage du résultat des formules.
Voilà, voir le fichier joint, si ça peut répondre à ta question ...
À Bientôt