Connexion SharePoint Power BI : la méthode qui accélère vraiment les actualisations

miniature d'articles (8)

Pourquoi la connexion SharePoint ralentit vos actualisations ?

Si vous avez déjà cherché à connecter Power BI à une source « dossier SharePoint », vous avez certainement rencontré le principal problème : tout le contenu du site SharePoint est chargé, puis vous devez filtrer pour ne récupérer que vos fichiers.

Cela s’explique par le fait que le connecteur « dossier SharePoint » utilise la fonction SharePoint.Files.

Sharepoint Power BI

Vous pourriez vous dire : « c’est un peu embêtant, mais ça fonctionne ». Et vous avez raison… mais il y a un mais. Plus le site contient de fichiers, plus Power Query mettra de temps à s’actualiser. Or, en entreprise, les sites SharePoint ont tendance à être volumineux. Résultat : vos connexions deviennent lentes et vos rapports Power BI s’actualisent difficilement.

La méthode alternative avec SharePoint.Contents : plus rapide et plus précise

Pour résoudre ce problème, vous pouvez utiliser la fonction SharePoint.Contents. Contrairement à SharePoint.Files, cette fonction cible directement les éléments que vous souhaitez, sans passer par un filtrage complet du site SharePoint.

Plus votre site SharePoint est volumineux, plus il est intéressant d’utiliser cette fonction. Vous pouvez rendre votre requête Power Query jusqu’à 5 fois plus rapide sur des sites très volumineux.

Autre avantage : cette fonction évite la création d’un dossier « Requêtes d’assistance », ce fameux dossier rempli d’éléments inutiles qui apparaît dans vos requêtes Power Query.

Alors pourquoi ne pas l’utiliser systématiquement ? La réponse est simple : il faut maîtriser un minimum le langage M de Power Query. Sans cela, il est difficile de mettre en place SharePoint.Contents.

Comment utiliser SharePoint.Contents pour cibler un seul fichier dans SharePoint

Prenons un exemple concret : nous voulons connecter Power BI à des fichiers RH présents sur le site SharePoint « Sitedeformation1 ».

Nous commencerons par récupérer un seul fichier, puis nous verrons comment consolider plusieurs fichiers.

Étape 1 : Identifier le fichier à récupérer

Dans notre exemple, le fichier Excel s’appelle « Janvier RH.xlsx ». Il se trouve à l’emplacement suivant : Sitedeformation1 > Documents > Fichiers RH > Consolidation Mois.
La feuille à récupérer s’appelle « HR_Employee_Data ».

Dossier sharepoint

Étape 2 : Créer une requête vide dans Power Query

  • Rendez-vous dans Power Query
  • Créez une requête vide
requête vide

Étape 3 : Utiliser l’éditeur avancé

  • Ouvrez l’éditeur avancé
éditeur avancé
  • Supprimer le code
  • Copiez le code suivant et adaptez-le à votre situation en modifiant les noms des dossiers, fichiers et feuilles.
  • Code couleur :
    • Les valeurs à adapter à votre situation
    • Les valeurs (variables) pour lesquelles vous n’êtes pas obligé de changer le nom. C’est comme vous voulez.
    • Les commentaires explicatifs (que vous pouvez laissez dans le copier-coller)
    • Point de vigilance. Attention : « Documents » apparait souvent sous ce nom dans SharePoint, mais est en fait référencé sous le nom de « Documents partages ». C’est le cas chez moi par exemple.
let
    // 1️⃣ Connexion au site SharePoint
    Source = SharePoint.Contents("https://williamgoutte42.sharepoint.com/sites/Sitedeformation1", [ApiVersion = 15]),

    // 2️⃣ Accès à la bibliothèque "Documents"
    Docs = Source{[Name="Documents partages"]}[Content],

    // 3️⃣ Navigation dans les sous-dossiers (vous pouvez en ajouter si besoin...)
    Dossier1 = Docs{[Name="Fichiers RH"]}[Content],
    Dossier2 = Dossier1{[Name="Consolidation Mois"]}[Content],

    // 4️⃣ Filtrage sur le fichier voulu
    FichiersRH = Table.SelectRows(Dossier2, each [Name] = "Janvier RH.xlsx"),

    // 5️⃣ Ouverture du contenu du fichier Excel
    ContenuExcel = Excel.Workbook(FichiersRH{0}[Content], true),

    // 6️⃣ (Optionnel) Sélection d’une feuille précise si nécessaire
    Donnees = ContenuExcel{[Item="HR_Employee_Data", Kind="Sheet"]}[Data]
in
    Donnees

Comment utiliser SharePoint.Contents pour consolider plusieurs fichiers stockés dans SharePoint

La fonction SharePoint.Contents peut également servir à consolider plusieurs fichiers présents dans un dossier. La manipulation est similaire, mais légèrement plus complexe.

Elle permet de créer une table unique à partir de plusieurs fichiers, ce qui facilite l’actualisation de vos rapports Power BI et optimise la performance sur de gros sites SharePoint.

Dans ce second exemple, je vais consolider tout les fichiers qui continents les termes « RH.xlsx ». Pour ce qui est du code couleur, il est le même que dans le chapitre précédent.

let
    // 1️⃣ Connexion au site SharePoint
    Source = SharePoint.Contents("https://williamgoutte42.sharepoint.com/sites/Sitedeformation1", [ApiVersion = 15]),

    // 2️⃣ Accès à la bibliothèque "Documents"
    Docs = Source{[Name="Documents partages"]}[Content],

  // 3️⃣ Navigation dans les sous-dossiers (vous pouvez en ajouter si besoin...)
    Dossier1 = Docs{[Name="Fichiers RH"]}[Content],
    Dossier2 = Dossier1{[Name="Consolidation Mois"]}[Content],

    // 4️⃣ Filtrage sur tous les fichiers contenant "RH.xlsx"
    FichiersRH = Table.SelectRows(Dossier2, each Text.Contains([Name], "RH.xlsx")),

    // 5️⃣ Ouvrir le contenu Excel de chaque fichier
    FichiersAvecContenu = Table.AddColumn(
        FichiersRH,
        "Excel",
        each Excel.Workbook([Content], true)
    ),

    // 6️⃣ Sélection de la feuille "HR_Employee_Data" dans chaque fichier
    FeuillesRH = Table.AddColumn(
        FichiersAvecContenu,
        "FeuilleRH",
        each try [Excel]{[Item="HR_Employee_Data", Kind="Sheet"]}[Data] otherwise null
    ),

    // 7️⃣ On garde uniquement ceux qui ont bien la feuille
    FeuillesFiltrees = Table.SelectRows(FeuillesRH, each [FeuilleRH] <> null),

    // 8️⃣ Combinaison des feuilles en une seule table
    Combine = Table.Combine(FeuillesFiltrees[FeuilleRH])
in
    Combine

Plus d’articles

  • Connexion SharePoint Power BI : la méthode qui accélère vraiment les actualisations

    Connexion SharePoint Power BI : la méthode qui accélère vraiment les actualisations

    Pourquoi la connexion SharePoint ralentit vos actualisations ? Si vous avez déjà cherché à connecter Power BI à une source « dossier SharePoint », vous avez certainement rencontré le principal problème : tout le contenu du site SharePoint est chargé, puis vous devez filtrer pour ne récupérer que vos fichiers. Cela s’explique par le fait…

    Lire l’article

  • Power Query : cibler une feuille Excel par position plutôt que par nom

    Power Query : cibler une feuille Excel par position plutôt que par nom

    Si vous utilisez le connecteur « Dossier » ou « Dossier SharePoint » dans Power Query pour consolider plusieurs fichiers Excel, vous avez sans doute remarqué que le nom des feuilles a son importance.En effet, si les feuilles n’ont pas le même nom d’un fichier à l’autre, votre consolidation échouera. Cela peut être très frustrant…

    Lire l’article

  • Créer une table de mesures dans Power BI

    Créer une table de mesures dans Power BI

    Pourquoi créer une table de mesures dans Power BI Créer une table de mesures dans Power BI est une excellente pratique pour organiser et structurer vos calculs DAX.Elle permet de garder un modèle propre, lisible et professionnel, surtout lorsque votre rapport contient un grand nombre de mesures. Même si cette méthode reste facultative, elle est…

    Lire l’article

  • 10 Exercices Power Query gratuits avec corrigés

    10 Exercices Power Query gratuits avec corrigés

    Récupérer les exercices Power Query gratuitement Avant toute chose, il est important de préciser que ces exercices Power Query sont destinés à un usage personnel et pédagogique. Si vous souhaitez réutiliser ces exercices dans un cadre professionnel ou commercial, vous êtes tenu de conserver la mention Top-n.fr, déjà intégrée dans les fichiers. Pour vous entraîner…

    Lire l’article

  • Créer un chemin d’accès variable dans Excel – Power Query

    Créer un chemin d’accès variable dans Excel – Power Query

    Introduction Vous souhaitez modifier facilement le chemin d’accès de vos requêtes Power Query sans devoir tout reconfigurer ? La solution consiste à créer une variable directement dans Excel. Grâce à cette méthode, vous rendez le chemin d’accès dynamique et modifiable en quelques clics. Pourquoi utiliser un chemin d’accès variable dans Excel ? Modifier le chemin…

    Lire l’article

  • Cumul sans limite de temps en DAX : Guide complet pour Power BI

    Cumul sans limite de temps en DAX : Guide complet pour Power BI

    Manipuler les données temporelles avec le DAX dans Power BI n’est pas toujours évident. Cela se complique encore lorsqu’aucune fonction native ne permet de répondre directement à votre besoin. Dans cet article, je vous explique étape par étape comment réaliser un cumul temporel illimité sur la plage de temps de votre choix dans Power BI.…

    Lire l’article

  • La One Big Fact Table (OBFT) ou Fact Table Consolidée dans Power BI

    La One Big Fact Table (OBFT) ou Fact Table Consolidée dans Power BI

    Les modèle en constellation (ou constellation schéma) Si vous utilisez Power BI, vous avez sans doute déjà rencontré des difficultés lorsque plusieurs tables de faits sont reliées à plusieurs tables de dimensions. Pour les plus expérimentés, vous savez sûrement qu’il s’agit d’un modèle en constellation (constellation schema). Même si ce type de modèle fonctionne correctement…

    Lire l’article

  • Top 3 des Fonctions DAX pour compter

    Top 3 des Fonctions DAX pour compter

    Vous utilisez Power BI régulièrement et vous vous demandez quelles sont les 3 fonctions DAX à connaître pour le comptage ? Vous êtes au bon endroit. Dans cet article, je vais vous présenter les 3 fonctions qui, selon moi, sont les plus importantes à maîtriser pour compter efficacement dans Power BI. Les 3 meilleurs fonctions pour compter…

    Lire l’article

  • Top 7 des bonnes pratiques en DAX

    Top 7 des bonnes pratiques en DAX

    Utiliser le DAX dans Power BI est incontournable pour tout personne cherchant à construire un rapport pertinent et performant. Cependant, à la différence d’Excel, il ne suffit pas de se dire « ça fonctionne ». Sans une certaine structure et quelques astuces votre code DAX risque de ne pas être optimisé et pourrait être difficile à comprendre…

    Lire l’article

  • Liste des fonctions DAX pour compter dans power bi

    Liste des fonctions DAX pour compter dans power bi

    Dans Power BI, le comptage peut sembler simple à première vue, mais il peut rapidement devenir complexe selon le contexte. Faut-il inclure les doublons ? Prendre en compte les cellules vides ? Compter les valeurs d’une colonne spécifique ou plutôt le nombre total de lignes ? Ces différentes situations peuvent rendre le choix de la…

    Lire l’article