Dans Excel 2003, je posais une question sur le comptage d'une chaîne de texte Man dans les feuilles nommées 001R à 900R, dans la même cellule C8 de toutes les feuilles.
J'ai la réponse suivante
=SUMPRODUCT(COUNTIF(INDIRECT("'"&ROW(INDIRECT(001&":"&900))&"R"&"'!C8"),"*Man*"))
Cela fonctionne parfaitement lorsque les feuilles sont toutes présentes. Mais lorsque vous utilisez la formule ci-dessus alors que toutes les feuilles ne sont pas encore présentes, cela donne une erreur, car j'ai des noms de feuille de calcul comme
001R 002R 003S 004R 101R 102S 103R 210R 211R 305R 306S 307R 401R 402R 403S 404R
et ainsi de suite pour environ 300 feuilles. Les numéros de feuilles manquants seront ajoutés ultérieurement, au fur et à mesure de la disponibilité des données.
Existe-t-il un moyen d'utiliser une formule qui englobe tous les nombres pour inclure les noms de feuille actuels et futurs possibles, afin d'éviter de modifier la formule à chaque fois qu'une nouvelle feuille est ajoutée?
@ Gary's Student a une réponse très utile. Mais je veux compter le texte dans une liste déroulante avec de nombreux éléments, et je veux compter l'occurrence de chacun. Avec votre technique, devrais-je créer un module UDF pour chaque article; ou y at-il un moyen de faire cela.
De plus, j'ai des feuilles avec S non R attachées à leur numéro. Y a-t-il un moyen de les compter aussi? Je veux dire est-il un moyen de faire
shName = Format(i, "000") & "R"
et
If InStr(1, cel, "Man") as variables entered in =SpecialSum(C8).