POWERQUERY + VBA - Bug ou changement d'approche

Bonjour

Pour info aux utilisateurs de PowerQuery

J'utilise depuis des années sans souci un classeur avec des requêtes et un petit code VBA pour actualiser et effectuer quelques réglages.

Depuis la dernière révision installée sur les PC dans la dernière quinzaine, impossible de lancer le code depuis le bouton prévu.
Un message d'erreur annonce que le macro n'est pas disponible.
On peut cependant l'exécuter depuis l'éditeur VBE.

Si on essaie de modifier ou recréer le bouton un message assez étonnant indique une possible erreur de syntaxe dans la formule...

J'avais vu ce problème sur Insider il y a un moment mais n'avais pas cherché à comprendre.

Le problème apparaissant sur la version normale, j'ai cette fois creusé.

Il se trouve qu'une des requêtes porte le même nom que la Sub VBA.

Il y a donc eu un changement dans la gestion interne des noms des composants d'un classeur.

J'ignore si c'est un bug ou une nouvelle optique Microsoft mais je leur ai signalé.

Comme vous pouvez tomber sur ce problème, je vous en informe pour vous éviter de passer autant de temps que moi à chercher...

Bonjour,

Hello Chris

Merci pour ce partage.

Par contre, je ne saisis pas trop :

Il se trouve qu'une des requêtes porte le même nom que la Sub VBA.

Tu veux dire que si tu avais une requête nommée "T_Final", par exemple, ta sub se nommait :

Sub T_Final()
Range("T_Final").ListObject.QueryTable.Refresh False
End Sub

Bonne apm

Bonjour

Oui c'est cela.

Mais le nom de la requête n'est même pas cité dans le code qui contient un ThisWorkbook.RefreshAll...

Bonjour,

Je viens de tester avec ce code, que j'utilise pour rafraichir la page/requête/TCD au changement d'onglet par exemple :

Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
End Sub

Chez moi l'actualisation fonctionne bien

RE

Ton code n'a pas le nom d'une requête...

Le blocage se fait si les conditions suivantes sont réunies :

  • une requête et une Sub VBA ont le même nom
  • un bouton permet de lancer la sub : c'est l'appui sur le bouton ou sa reconfiguration qui permettent de voir les messages d'erreur

J'avais pas compris !

Merci pour les infos

Re-,

Ok, compris.

En général, les sub de mises à jour, je les préfixe avec "maj_" (style "maj_larequetekivabien")
Par contre, si le nom de la requête est "noyé" dans le nom de la sub, est-ce que ce phénomène se produit quand même?
Et bien spécifique 365, non?
Bonne soirée

RE

Non seul un nom identique provoque l'erreur mais ce n'est, comme je l'ai dit que depuis la dernière Mise à jour d'Office.

Cela tournait sans PB depuis 3 ans.

Rechercher des sujets similaires à "powerquery vba bug changement approche"