(power query) liste des onglet du classeur courant

Bonjour le forum !

Je suis souhaite obtenir une table contenant la liste des onglets présents (masqués ou non) dans le classeur courant.

Je sais faire l'exercice avec un classeur fermé en utilisant le chemin d'accès au fichier mais avec le classeur courant, je sèche !

Je précise que je ne souhaite pas utiliser de chemin d'accès mais bien utiliser Excel.CurrentWorkbook si possible ou une autre méthode.

Est-ce faisable ?

Merci d'avance.

Bonjour

Excel.CurrentWorkbook ne peut récupérer que les tables ou les plages nommées

A ce jour seul le lien vers le fichier accède aux onglets

Merci 78Chris.

N'y a-t-il pas un moyen de tester si un onglet précis existe dans le classeur ouvert ?

Bonjour TchéTché, 78Chris

Avec une ancienne fonction qui ne peut marcher qu'en définissant un nom

Formules -> Définir une nom -> Exemple : NomOnglets

Et dans fait référence à, mettre : =LIRE.CLASSEUR(1)

Enfin dans une cellule, on peut écrire la formule =NomOnglets

A+

RE à tous

Bonne idée

Formules -> Définir une nom -> Exemple : NomOnglets

Et dans fait référence à, mettre : =LIRE.CLASSEUR(1)

Sur 365 =TRANSPOSE(LIRE.CLASSEUR(1)) est super pour lister sinon

EQUIV("*nom cherché*";NomOnglets;0)donne la position ou #N/A

Mais avec 2013 ou plus FEUILLE("Nom Onglet") fait la même chose

Cependant cela laisse entendre que le nombre d'onglets est pléthorique si tu ne sais pas vérifier sans cela et cela pose question

Merci à tous les deux !

Cela m'a presque permis de résoudre mon problème...

Car la formule TRANSPOSE(LIRE.CLASSEUR(1)) me retourne bien la liste des onglets du classeur, mais lorsque je transforme la plage en tableau afin de pouvoir le lire dans PQ, j'obtiens une erreur #EPARS!

Une idée ?

Re,

#EPARS! normalement veut dire qu'Excel ne peut pas écrire la liste complète (pas assez de place)

A+

Bonjour,

Hello Bruno

On ne peut pas mettre de formules à propagation dans un Tableau Structuré...(ou plutôt, les propagations ne peuvent se dérouler dans un TS)

D'où l'erreur..

Par contre, si tu nommes la plage de propagation, tu peux l'intégrer dans une requête PQ

Bonne journée

Merci cousinhub !

Effectivement, j'ai créé une plage nommée dynamique et j'arrive bien à récupérer la liste des onglets dans une table à l'aide de Excel.CurrentWorkbook !

Merci encore à tous les 3 !

La seule chose qui me gêne un peu c'est que si l'on crée ou supprime un onglet, la formule ne s'actualise pas ! Il faut aller sur la cellule contenant la formule =NomOnglets puis valider pour obtenir la nouvelle liste... Pas top, mais mieux que rien !

Bonjour

Je pense que c'est inhérent à l'ancienneté de ce code (macro excel 4) qui de plus suppose, il me semble d'enregistrer le classeur, en xlsm

Dans ce cas autant utiliser un code VBA pour lister si FEUILLE("Nom Onglet") ne suffit pas

Rechercher des sujets similaires à "power query liste onglet classeur courant"