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).