VBA Excel: code pr reprendre le nom d'une feuille ds une formule

Résolu/Fermé
Anne - 12 déc. 2013 à 14:29
 Anne - 12 déc. 2013 à 17:39
Bonjour,

Je dispose d'un classeur Excel contenant plusieurs feuilles.
Dans la première feuille, j'envisage de faire des statistiques portant sur les éléments contenus dans les suivantes.
J'aimerais, plus précisément et de manière automatisée:
- utiliser la formule suivante en C2: =nb.si('feuille_suivante'!$B:$B;$A3), où 'feuille_suivante' est le nom de la feuille qui suit,
- l'étendre jusqu'à la dernière ligne du tableau,
- avant de passer à la colonne suivante (D2) qui reprendrait, dans la formule, le nom de la feuille qui suit, l'étendre à son tour et ainsi de suite jusqu'à la dernière feuille du tableau.

J'espère être compréhensible et vous remercie par avance de vos retours!

Merci
A voir également:

1 réponse

Vaucluse Messages postés 26495 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 8 avril 2022 6 288
12 déc. 2013 à 14:47
Bonjour
sans VBA, faire en colonne B la liste des noms de feuilles dans l'ordre voulu
en C, à partir de B1:
=NB.SI(INDIRECT("'"&A1&"'!$B:$B");$A3)

en fait INDIRECT("'"&A1&"'!B:B") reprend le texte écrit par la formule de IN DIRECT et le considére comme une adresse

Note:
B:B dans le code indirect étant un texte , les signes sont inutiles.
si le nom de feuille ne comporte pas de blanc, les apostrophes début et fin ne sont pas utiles.
Il est possible de se passer de la, colonne B si les noms de feuilles sont une constante texte avec un composant numérique évolutif, comme par exemple:
Feuil1 sera sur ligne 3: INDIRECT("Feuil"&LIGNE()-2&"!B:B")
ce qui deviendra Feuil2!B:B sur ligne 4 ect...



crdlmnt

1
Merci pour votre réponse, qui fonctionne à merveille!
Afin de l'automatiser, je l'intègrerai à une macro via l'enregistreur, ce qui me dispensera de VBA.

Merci encore!
0