Texte/CSV

Résumé

Élément Descriptif
État de mise en production Disponibilité générale
Produits Excel
Power BI (modèles sémantiques)
Power BI (flux de données)
Fabric (Flux de données Gen2)
Power Apps (Flux de données)
Dynamics 365 Customer Insights
Services d'analyse
Documentation de référence sur les fonctions File.Contents
Lines.FromBinary
Csv.Document

Remarque

Certaines fonctionnalités peuvent être présentes dans un produit, mais pas d’autres en raison de planifications de déploiement et de fonctionnalités spécifiques à l’hôte.

Fonctionnalités prises en charge

  • Importer

Se connecter au fichier texte/CSV local à partir de Power Query Desktop

Pour charger un fichier texte ou CSV local :

  1. Sélectionnez l’option Texte/CSV dans Obtenir des données. Cette action lance un navigateur de fichiers local dans lequel vous pouvez sélectionner votre fichier texte.

    Capture d’écran du navigateur de fichiers ouvert lorsque vous sélectionnez votre fichier texte.

    Sélectionnez Ouvrir pour ouvrir le fichier.

  2. Dans le navigateur, vous pouvez transformer les données dans l’éditeur Power Query en sélectionnant Transformer des données ou en chargeant les données en sélectionnant Charger.

    Capture d’écran de l’exemple de texte dans le navigateur.

Se connecter au fichier texte/CSV à partir de Power Query Online

Pour charger un fichier texte ou CSV local :

  1. Dans la page Sources de données , sélectionnez Texte/CSV.

  2. Dans les paramètres de connexion, chargez le fichier ou entrez un chemin d’accès au fichier local texte ou CSV souhaité.

    Capture d’écran de l’écran de sélection de fichier texte en ligne.

  3. Sélectionnez une passerelle de données locale à partir de la passerelle de données.

  4. Saisissez un nom d’utilisateur et un mot de passe.

  5. Cliquez sur Suivant.

  6. Dans le navigateur, sélectionnez Transformer des données pour commencer à transformer les données dans l’éditeur Power Query.

    Capture d’écran de la fenêtre de navigateur en ligne dans laquelle vous sélectionnez Transformer des données.

Charger à partir du web

Pour charger un fichier texte ou CSV à partir du web, sélectionnez le connecteur Web, entrez l’adresse web du fichier et suivez les invites de saisie des identifiants.

Délimiteurs de texte/CSV

Power Query traite les CSV comme des fichiers structurés avec une virgule comme délimiteur , un cas spécial d’un fichier texte. Si vous choisissez un fichier texte, Power Query tente automatiquement de déterminer s’il a des valeurs séparées par un délimiteur et ce que ce délimiteur est. S’il peut différer un délimiteur, il le traite automatiquement comme une source de données structurée.

Texte non structuré

Si votre fichier texte n’a pas de structure, vous obtenez une seule colonne avec une nouvelle ligne pour chaque ligne encodée dans le texte source. En guise d’exemple pour le texte non structuré, considérez un fichier bloc-notes avec le contenu suivant :

Hello world.
This is sample data.

Lorsqu'il est chargé, un écran de navigation s'affiche, intégrant chaque ligne dans sa propre rangée.

Capture d’écran du navigateur avec des données chargées à partir d’un fichier texte simple non structuré.

Vous ne pouvez configurer qu’une seule option dans cette boîte de dialogue, qui est la sélection déroulante Origine du fichier . Cette liste déroulante vous permet de sélectionner le jeu de caractères utilisé pour générer le fichier. Actuellement, le jeu de caractères n’est pas déterminé automatiquement, et UTF-8 n’est déterminé automatiquement que s’il y a un BOM UTF-8 au début.

Capture d’écran de la sélection de culture de fichier pour Text/CSV.

CSV

Vous trouverez ici un exemple de fichier CSV.

Outre l’origine du fichier, CSV prend également en charge la spécification du délimiteur et la façon dont la détection du type de données est gérée.

Capture d’écran du navigateur montrant les données chargées à partir d’un fichier csv.

Les délimiteurs incluent deux-points, virgules, signe égal, point-virgule, espace, onglet, délimiteur personnalisé (qui peut être n’importe quelle chaîne) et une largeur fixe (fractionnement du texte par un nombre standard de caractères).

Capture d’écran de la sélection du délimiteur pour un fichier csv.

La liste déroulante finale vous permet de sélectionner la façon dont vous souhaitez gérer la détection des types de données. Vous pouvez la baser sur les 200 premières lignes ou sur l’ensemble du jeu de données. Vous pouvez également choisir de désactiver la détection automatique des types de données et laisser toutes les colonnes par défaut « Text ». Avertissement : si vous choisissez l’ensemble du jeu de données, la charge initiale des données dans l’éditeur peut être plus lente.

Capture d’écran de la sélection d’inférence de type de données pour un fichier csv.

Étant donné que l’inférence peut être incorrecte, vérifiez les paramètres avant le chargement.

Texte structuré

Lorsque Power Query détecte la structure dans votre fichier texte, il traite le fichier texte comme un fichier de valeurs séparé par un délimiteur. Il vous offre les mêmes options disponibles lors de l’ouverture d’un fichier CSV. Un fichier CSV est essentiellement un fichier avec une extension indiquant le type de délimiteur.

Par exemple, si vous enregistrez l’exemple suivant en tant que fichier texte, Power Query le lit comme ayant un délimiteur d’onglet plutôt que du texte non structuré.

Column 1	Column 2	Column 3
This is a string.	1	ABC123
This is also a string.	2	DEF456

Capture d’écran montrant les données chargées à partir d’un fichier texte structuré.

Vous pouvez utiliser cette structure pour n’importe quel type d’autre fichier basé sur un délimiteur.

Modification de la source

Lorsque vous modifiez l’étape source (dans le volet Étapes appliquées de Power Query Desktop), une boîte de dialogue légèrement différente s’affiche lorsque vous chargez initialement le fichier. Selon la façon dont vous traitez actuellement le fichier (en tant que texte ou CSV), vous voyez un écran avec différentes listes déroulantes.

Capture d’écran de la boîte de dialogue dans laquelle vous modifiez l’étape source d’une requête accédant à un fichier CSV.

Utilisez la liste déroulante Sauts de ligne pour sélectionner si vous souhaitez appliquer des sauts de ligne entre guillemets ou non.

Capture d’écran de la liste déroulante dans laquelle vous sélectionnez le style de saut de ligne d’un fichier CSV.

Par exemple, si vous modifiez l’exemple « structuré » précédemment fourni, vous pouvez ajouter un saut de ligne.

Column 1	Column 2	Column 3
This is a string.	1	"ABC
123"
This is also a string.	2	"DEF456"

Si vous réglez Sauts de ligne sur Ignorer les sauts de ligne entre guillemets, l’exemple se charge avec la deuxième moitié de la chaîne sous la première moitié, dans la même colonne.

Le chargement d’un fichier CSV avec des sauts de ligne entre guillemets est ignoré.

Si vous définissez Sauts de ligne sur Appliquer tous les sauts de ligne, l’exemple charge une ligne supplémentaire, le contenu situé après les sauts de ligne étant alors le seul contenu de cette ligne (la sortie exacte peut dépendre de la structure du contenu du fichier).

Chargement d’un fichier CSV avec des sauts de ligne entre guillemets appliqués.

Utilisez la liste déroulante Ouvrir le fichier pour modifier ce que vous souhaitez charger le fichier sous. Ce paramètre est important pour la résolution des problèmes. Pour les fichiers structurés qui ne sont pas techniquement des CSVS (par exemple, un fichier de valeurs séparées par un onglet enregistré en tant que fichier texte), conservez le fichier Ouvert comme défini sur CSV. Ce paramètre détermine également les listes déroulantes disponibles dans le reste de la boîte de dialogue.

Modification du type de fichier.

Texte/CSV par exemple

Le texte/CSV par exemple dans Power Query est une fonctionnalité généralement disponible dans Power BI Desktop et Power Query Online. Lorsque vous utilisez le connecteur Text/CSV, vous voyez une option permettant d’extraire un tableau à l’aide d’exemples dans le coin inférieur gauche du navigateur.

Utilisation de l’option Extraire la table à l’aide d’exemples.

Lorsque vous sélectionnez ce bouton, vous êtes redirigé vers la page Extraire la table à l’aide d’exemples . Dans cette page, vous spécifiez des exemples de valeurs de sortie pour les données que vous souhaitez extraire de votre fichier Texte/CSV. Une fois que vous avez entré la première cellule de la colonne, d’autres cellules de la colonne sont remplies. Pour que les données soient extraites correctement, vous devrez peut-être entrer plusieurs cellules dans la colonne. Si certaines cellules de la colonne sont incorrectes, vous pouvez corriger la première cellule incorrecte et les données sont extraites à nouveau. Pour vous assurer que les données ont été extraites avec succès, vérifiez les données dans les premières cellules.

Remarque

Entrez les exemples dans l’ordre des colonnes. Une fois la colonne remplie, créez une colonne et commencez à entrer des exemples dans la nouvelle colonne.

Spécifiez des exemples de valeurs de sortie pour extraire des données.

Une fois que vous avez terminé la construction de cette table, vous pouvez choisir de charger ou de transformer les données. Notez comment les requêtes résultantes contiennent une répartition détaillée de toutes les étapes déduites pour l’extraction de données. Ces étapes sont des étapes de requête régulières que vous pouvez personnaliser en fonction des besoins.

Répartition détaillée des étapes d’extraction de données.

Résolution des problèmes

Chargement de fichiers à partir du web

Si vous demandez des fichiers text/csv depuis le Web et que vous transmettez également des en-têtes, et si vous récupérez suffisamment de fichiers pour devoir vous préoccuper d’un éventuel étranglement, envisagez d’encapsuler votre appel à Web.Contents dans Binary.Buffer(). Dans ce cas, mettre le fichier en mémoire tampon avant de propager les en-têtes fait que le fichier n’est demandé qu’une seule fois.

Utilisation de fichiers CSV volumineux

Si vous traitez de fichiers CSV volumineux dans l’éditeur Power Query Online, vous pouvez recevoir une erreur interne. Utilisez d’abord un fichier CSV de taille plus petite, appliquez les étapes de l’éditeur et, une fois que vous avez terminé, modifiez le chemin d’accès au fichier CSV plus grand. Cette méthode vous permet de travailler plus efficacement et de réduire vos chances de rencontrer un délai d’expiration dans l’éditeur en ligne. Vous ne vous attendez pas à rencontrer cette erreur pendant l’actualisation, car le service autorise une durée de délai d’expiration plus longue.

Le texte non structuré est interprété comme structuré

Dans de rares cas, Power Query interprète un document en tant que fichier CSV lorsque des nombres de virgules similaires apparaissent entre les paragraphes. Si ce problème se produit, modifiez l’étape Source dans l’éditeur Power Query, puis sélectionnez Texte au lieu de CSV dans la liste déroulante Ouvrir un fichier sous.

Colonnes dans Power BI Desktop

Lorsque vous importez un fichier CSV, Power BI Desktop génère une étape columns=x dans l’éditeur Power Query, où x correspond au nombre de colonnes du fichier CSV lors de l’importation initiale. Si vous ajoutez ultérieurement d’autres colonnes et définissez la source de données à actualiser, l’opération d’actualisation n’inclut aucune colonne au-delà du nombre initial x de colonnes.

Erreur : Connexion fermée par l’hôte

Lors du chargement de fichiers Texte/CSV à partir d’une source web et de la promotion d’en-têtes, vous pouvez parfois rencontrer les erreurs suivantes : "An existing connection was forcibly closed by the remote host" ou "Received an unexpected EOF or 0 bytes from the transport stream." l’hôte peut provoquer ces erreurs en utilisant des mesures de protection et en fermant une connexion qui peut être temporairement suspendue, par exemple lors de l’attente d’une autre connexion de source de données pour une opération de jointure ou d’ajout. Pour contourner ces erreurs, essayez d’ajouter un appel Binary.Buffer (recommandé) ou Table.Buffer . Ces fonctions téléchargent le fichier, chargent-le en mémoire et ferment immédiatement la connexion. Cette action empêche toute pause pendant le téléchargement et empêche l’hôte de fermer de force la connexion avant la récupération du contenu.

L’exemple suivant illustre cette solution de contournement. Cette mise en mémoire tampon doit être effectuée avant que la table résultante soit passée à Table.PromoteHeaders.

  • Original :
Csv.Document(Web.Contents("https://.../MyFile.csv"))
  • Avec Binary.Buffer:
Csv.Document(Binary.Buffer(Web.Contents("https://.../MyFile.csv")))
  • Avec Table.Buffer:
Table.Buffer(Csv.Document(Web.Contents("https://.../MyFile.csv")))