Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Dans Power Query, vous pouvez rencontrer deux types d’erreurs :
- Erreurs au niveau de l’étape
- Erreurs au niveau de la cellule
Cet article fournit des suggestions pour résoudre les erreurs les plus courantes que vous pouvez trouver à chaque niveau, et décrit la raison de l’erreur, le message d’erreur et les détails d’erreur pour chacun d’eux.
Erreur au niveau de l’étape
Une erreur au niveau de l’étape empêche le chargement de la requête et affiche les composants d’erreur dans un volet jaune.
- Raison de l’erreur : première section avant le signe deux-points. Dans l’exemple précédent, la raison de l’erreur est Expression.Error.
- Message d’erreur : section directement après la raison. Dans l’exemple précédent, le message d’erreur est la colonne « Colonne » de la table introuvable.
- Détails de l’erreur : section directement après les détails : chaîne. Dans l’exemple précédent, le détail de l’erreur est Column.
Power Query Online affiche des détails légèrement différents. Le détail de l’erreur est toujours colonne, mais le message d’erreur en ligne contient également la raison de l’erreur (Expression.Error) et le code d’erreur (10224).
Erreurs courantes au niveau de l’étape
Dans tous les cas, nous vous recommandons d’examiner de près la raison de l’erreur, le message d’erreur et les détails de l’erreur pour comprendre ce qui provoque l’erreur. Vous pouvez sélectionner le bouton Afficher les détails , le cas échéant, pour afficher plus de détails sur l’erreur.
Impossible de trouver la source - DataSource.NotFound
Cette erreur se produit généralement lorsque la source de données est inaccessible par l’utilisateur, l’utilisateur n’a pas les informations d’identification appropriées pour accéder à la source de données ou la source a été déplacée vers un autre emplacement.
Exemple : vous disposez d’une requête à partir d’une vignette de texte située dans le lecteur D et créée par l’utilisateur A. L’utilisateur A partage la requête avec l’utilisateur B, qui n’a pas accès au lecteur D. Lorsque cette personne tente d’exécuter la requête, elle obtient un DataSource.NotFound , car il n’y a pas de lecteur D dans son environnement.
Solutions possibles : vous pouvez modifier le chemin du fichier texte vers un chemin auquel les deux utilisateurs ont accès. En tant qu’utilisateur B, vous pouvez modifier le chemin d’accès du fichier pour qu’il s’agit d’une copie locale du même fichier texte.
La colonne de la table n’a pas été trouvée
Cette erreur est généralement déclenchée lorsqu’une étape fait une référence directe à un nom de colonne qui n’existe pas dans la requête.
Exemple : vous avez une requête à partir d’un fichier texte où l’un des noms de colonnes était Colonne. Dans votre requête, vous avez une étape qui renomme cette colonne en Date. Toutefois, il y a eu une modification dans le fichier texte d’origine, et il n’a plus d’en-tête de colonne portant le nom Colonne , car il a été modifié manuellement en Date. Power Query n’est pas en mesure de trouver un en-tête de colonne nommé Colonne. Il ne peut donc pas renommer de colonnes. Elle affiche l’erreur indiquée dans l’image suivante.
Solutions possibles : il existe plusieurs solutions pour ce cas, mais elles dépendent tous de ce que vous souhaitez faire. Pour cet exemple, étant donné que l’en-tête de colonne Date correcte provient déjà de votre fichier texte, vous pouvez simplement supprimer l’étape qui renomme la colonne. Cette modification permet à votre requête de s’exécuter sans cette erreur.
Autres erreurs courantes au niveau de l’étape
Lorsque vous combinez ou fusionnez des données entre plusieurs sources de données, vous pouvez obtenir une erreur Formula.Firewall telle que celle illustrée dans l’image suivante.
Cette erreur se produit pour différentes raisons, telles que les niveaux de confidentialité des données entre les sources de données ou la façon dont ces sources de données sont combinées ou fusionnées. Pour plus d’informations sur la façon de diagnostiquer ce problème, accédez au pare-feu de confidentialité des données.
Erreur au niveau de la cellule
Une erreur au niveau de la cellule n’empêche pas le chargement de la requête, mais affiche des valeurs d’erreur en tant qu’erreur dans la cellule. La sélection de l’espace blanc dans la cellule affiche le volet d’erreur sous l’aperçu des données.
Remarque
Les outils de profilage des données peuvent vous aider à identifier plus facilement les erreurs au niveau des cellules avec la fonctionnalité de qualité des colonnes. Pour plus d’informations, accédez aux outils de profilage des données.
Gestion des erreurs au niveau de la cellule
Lorsque vous rencontrez des erreurs au niveau de la cellule, Power Query fournit un ensemble de fonctions pour les gérer en supprimant, en remplaçant ou en conservant les erreurs.
Pour les sections suivantes, les exemples fournis utilisent le même exemple de requête que le point de départ. Dans cette requête, vous disposez d’une colonne Sales qui a une cellule avec une erreur provoquée par une erreur de conversion. La valeur à l’intérieur de cette cellule était NA, mais lorsque vous avez transformé cette colonne en nombre entier, Power Query n’a pas pu convertir NA en nombre, de sorte qu’elle affiche l’erreur suivante.
Supprimer les erreurs
Pour supprimer des lignes avec des erreurs dans Power Query, sélectionnez d’abord la colonne qui contient des erreurs. Sous l’onglet Accueil , dans le groupe Réduire les lignes , sélectionnez Supprimer les lignes. Dans le menu déroulant, sélectionnez Supprimer les erreurs.
Le résultat de cette opération vous donne le tableau suivant.
Remplacer les erreurs
Si, au lieu de supprimer des lignes avec des erreurs, vous souhaitez remplacer les erreurs par une valeur fixe, vous pouvez également le faire. Pour remplacer les lignes qui ont des erreurs, sélectionnez d’abord la colonne qui contient des erreurs. Sous l’onglet Transformation , dans le groupe de colonnes Any , sélectionnez Remplacer les valeurs. Dans le menu déroulant, sélectionnez Remplacer les erreurs.
Dans la boîte de dialogue Remplacer les erreurs , entrez la valeur 10 , car vous souhaitez remplacer toutes les erreurs par la valeur 10.
Le résultat de cette opération vous donne le tableau suivant.
Conserver les erreurs
Power Query peut servir d’outil d’audit approprié pour identifier les lignes avec des erreurs même si vous ne corrigez pas les erreurs. Cette situation est celle dans laquelle les erreurs peuvent être utiles. Pour conserver les lignes qui ont des erreurs, sélectionnez d’abord la colonne qui contient des erreurs. Sous l’onglet Accueil , dans le groupe Réduire les lignes , sélectionnez Conserver les lignes. Dans le menu déroulant, sélectionnez Conserver les erreurs.
Le résultat de cette opération vous donne le tableau suivant.
Erreurs courantes au niveau des cellules
Comme pour toute erreur au niveau de l’étape, nous vous recommandons d’examiner de près les raisons d’erreur, les messages d’erreur et les détails d’erreur fournis au niveau de la cellule pour comprendre ce qui provoque les erreurs. Les sections suivantes décrivent certaines des erreurs de niveau cellule les plus fréquentes dans Power Query.
Erreurs de conversion de type de données
Généralement déclenché lors de la modification du type de données d’une colonne dans une table. Certaines valeurs trouvées dans la colonne n’ont pas pu être converties en type de données souhaité.
Exemple : Vous disposez d’une requête qui inclut une colonne nommée Sales. Une cellule de cette colonne a na comme valeur de cellule, tandis que le reste a des nombres entiers en tant que valeurs. Vous décidez de convertir le type de données de la colonne du texte en nombre entier, mais la cellule avec la valeur NA provoque une erreur.
Solutions possibles : après avoir identifié la ligne avec l’erreur, vous pouvez modifier la source de données pour refléter la valeur correcte plutôt que NA, ou appliquer une opération remplacer une erreur pour fournir une valeur pour toutes les valeurs NA qui provoquent une erreur.
Erreurs d’opération
Lorsque vous essayez d’appliquer une opération qui n’est pas prise en charge, telle que la multiplication d’une valeur de texte par une valeur numérique, une erreur se produit.
Exemple : vous souhaitez créer une colonne personnalisée pour votre requête en créant une chaîne de texte qui contient l’expression « Total Sales : » concaténée avec la valeur de la colonne Sales . Une erreur se produit car l’opération de concaténation prend uniquement en charge les colonnes de texte et non les colonnes numériques.
Solutions possibles : avant de créer cette colonne personnalisée, modifiez le type de données de la colonne Sales en texte.
Valeurs imbriquées affichées en tant qu’erreurs
Lorsque vous utilisez des données qui contiennent des valeurs structurées imbriquées (telles que des tables, des listes ou des enregistrements), vous pouvez parfois rencontrer l’erreur suivante :
Expression.Error: We cannot return a value of type {value} in this context
Details: In the past we would have returned a text value of {value}, but we now return this error. Please see https://go.microsoft.com/fwlink/?linkid=2099726 for more information.
Ces erreurs se produisent généralement pour deux raisons :
- Lorsque le pare-feu de confidentialité des données met en mémoire tampon une source de données, les valeurs noncalaires imbriquées sont automatiquement converties en erreurs.
- Lorsqu’une colonne définie avec le
Anytype de données contient des valeurs noncalaires, ces valeurs sont signalées comme des erreurs lors du chargement (comme dans un classeur dans Excel ou le modèle de données dans Power BI Desktop).
Solutions possibles :
- Supprimez la colonne qui contient l’erreur ou définissez un type de données non-data
Anypour une telle colonne. - Modifiez les niveaux de confidentialité des sources de données impliquées à un niveau qui leur permet d'être combinées sans mise en mémoire tampon.
- Aplatir les tables avant d’effectuer une fusion pour éliminer les colonnes qui contiennent des valeurs structurées imbriquées (telles que la table, l’enregistrement ou la liste).