Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Modifier la source de données dans un powerbi à partir d'une macro VBA

marie49

XLDnaute Occasionnel
Bonjour,
Dans un outil excel avec des macros, je souhaite ouvrir, enregistrer dans un endroit précis un fichier Powerbi et ensuite de changer la source des données dans ce powerBI.
Tout cela avec une macro VBA.
Comment ouvrir et enregistrer un powerbi? si c'est faisable?
Est-il possible de modifier la source des données dans le powerbi?

Merci pour vos retours
Marie
 
Dernière édition:

chris

XLDnaute Barbatruc
Bonjour

Pas très clair : tu veux modifier un fichier .pbix ?

Dans Excel on paramètre très facilement la source de PowerQuery avec une cellule nommée ou un tableau sans besoin de VBA
 

marie49

XLDnaute Occasionnel
Bonjour,
En fait, j'ai un programme VBA qui crée un fichier excel avec les données utilisées que je veux utiliser dans un fichier powerbi (issue d'un template).
j'ouvre le powerbi (template) avec VBA et je veux enregistrer une copie de ce fichier au même endroit que le nouveau fichier des données et faire le lien entre ce nouveau fichier excel et ce nouveau fichier powerbi.
Je sais comment changer le chemin d'accès à la source dans powerbi mais mes utilisateurs ne connaissent pas forcément.
Donc j'aimerai savoir s'il y a une méthode pour
1/ faire une copie d'un powerbi dans un dossier précis
2/ modifier le chemin d'accès de la source entre ce ficheir excel et le fichier powerbi.

Est-ce que c'est plus clair?

Merci
Marie
 

chris

XLDnaute Barbatruc
Bonjour
Dans Excel on peut via VBA modifier un paramètre PowerQuery que prend en compte la requête
Exemple
VB:
Sub ChangeParameterValue(ParameterName As String, ParameterValue As String)

    Dim qry As WorkbookQuery
    Dim formula As Variant
    
    '=== Get the query
    Set qry = ThisWorkbook.Queries(ParameterName)
    
    '=== Split the formula into 3 parts and update the second one
    formula = Split(qry.formula, Chr(34), 3)
    formula(1) = ParameterValue
    
    '=== Update the parameter value
    qry.formula = Join(formula, Chr(34))
    
End Sub

Sub Maj()
    Call ChangeParameterValue("Fichier", "T:\TEMP\TrucMuche.xlsx")
    ThisWorkbook.RefreshAll
End Sub
J'ignore si c'est faisable dans PowerBI
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…