Aller au contenu principal

Qu'est-ce que la fonction IMPORTDATA ?

Définition
La fonction IMPORTDATA importe le contenu d'une URL publique au format CSV (valeurs séparées par virgules) ou TSV (valeurs séparées par tabulations) et l'insère sous forme de tableau dans la feuille active. Disponible uniquement dans Google Sheets, pas dans Excel.

IMPORTDATA importe des données depuis une URL publique au format CSV ou TSV directement dans ton tableur Google Sheets. Contrairement à un simple copier-coller, elle crée une connexion dynamique : les données se rafraîchissent automatiquement environ toutes les heures, sans que tu n'aies à lever le petit doigt.

C'est la fonction qui t'évite de télécharger manuellement des exports à chaque réunion : synchroniser des datasets open data de GitHub, alimenter un tableau de bord avec les exports de ton API, afficher les prix d'un catalogue mis à jour chaque nuit par ton ERP, ou monitorer des métriques de production en quasi temps réel.

Syntaxe

=IMPORTDATA(url; [délimiteur]; [locale])

Clique sur un argument pour aller à son explication.

IMPORTDATA est une fonction Google Sheets exclusivement. Dans Excel, l'équivalent est Power Query (Données > À partir du Web) qui supporte en plus l'authentification et les transformations avancées.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction IMPORTDATA

Seule l'URL est obligatoire : pointe-la directement vers le fichier de données brutes, jamais vers la page web qui le contient. Les deux arguments suivants ne servent qu'à dépanner : tu ne touches au délimiteur que si tes lignes atterrissent toutes dans une seule colonne (souvent un CSV européen en point-virgule), et à la locale que si des nombres comme 1,234.56 sont mal interprétés par ton tableur en français.

1

url

: l'adresse web complète du fichier CSV ou TSV à importer

Elle doit pointer directement vers le fichier de données brutes, pas vers une page web qui contient un lien vers ce fichier. L'URL doit être accessible publiquement, sans authentification requise.

Google Sheets télécharge le contenu et l'analyse automatiquement pour détecter le format. La formule insère ensuite les données en commençant dans la cellule où elle est saisie, en occupant autant de lignes et de colonnes que nécessaire.

Attention : Les URL qui redirigent vers un fichier (comme /download?file=data.csv) ou qui nécessitent un cookie de session ou un token dans le header ne fonctionnent pas. L'URL doit pointer directement vers les octets du fichier.

2

délimiteur

: le caractère qui sépare les valeurs dans ton fichier(facultatif)

Par défaut, Google Sheets détecte automatiquement la virgule (CSV) ou la tabulation (TSV). Tu peux spécifier un délimiteur personnalisé si ton fichier utilise un autre caractère comme le point-virgule, le pipe ou l'espace.

Quelques exemples : ";" pour les CSV européens avec point-virgule, "|" pour les fichiers délimités par pipe, " " pour les valeurs séparées par espace. Si tes données apparaissent dans une seule colonne au lieu d'être séparées, c'est presque toujours un problème de délimiteur.

3

locale

: le paramètre régional contrôle comment les nombres et les dates sont interprétés(facultatif)

Par défaut, Google Sheets utilise les paramètres de ton tableur. Spécifie une locale ("en_US" ou "fr_FR") si les données sources utilisent un format différent de tes paramètres régionaux.

Par exemple, si tes données viennent d'un système américain qui écrit 1,234.56 mais que ton tableur est en français (format 1 234,56), utilise "en_US" pour que les nombres soient correctement interprétés.

Le savais-tu ?
Pour transformer un Google Sheets en source de données, remplace la fin de son URL, /edit#gid=0, par /export?format=csv&gid=0, et mets le document en partage public en lecture seule. IMPORTDATA le lit alors comme n'importe quel fichier CSV, pratique pour synchroniser deux tableurs.
Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment importer un fichier CSV entier avec la fonction IMPORTDATA

Chaque semaine, l'équipe régionale publie ses ventes dans un fichier CSV posé sur un serveur, et tu dois le retrouver dans ton tableau de bord Google Sheets sans le télécharger ni le coller à la main. Le fichier tient en cinq lignes, un en-tête et quatre régions, mais demain il en comptera peut-être douze. La fonction IMPORTDATA lit ce fichier directement depuis son adresse web et le recopie dans ta feuille en une seule formule, tout en gardant le lien avec la source.

Les étapes
  1. 1
    Dans une cellule, écris =IMPORTDATA(.
  2. 2
    En 1er argument : clique sur la cellule qui contient l'adresse du fichier CSV, A1. Elle affiche l'URL complète https://data.excellersacademy.com/media/videos/fixtures/ventes-regions.csv, et pointer la cellule plutôt que de recopier l'adresse dans la formule te laissera changer de source plus tard sans rouvrir la fonction.
  3. 3
    Ferme la parenthèse et appuie sur Entrée. Google Sheets télécharge le fichier, reconnaît son format CSV et déverse tout le tableau à partir de la cellule de la formule : l'en-tête Region, Ventes, Objectif, puis les quatre régions en dessous. Le lien avec le fichier reste actif, si bien que la feuille rapatrie la dernière version à chaque rafraîchissement.
Au final, ta formule devrait ressembler à ça :=IMPORTDATA(A1)
Explication
La cellule A3 ne contient qu'une formule, =IMPORTDATA(A1), et pourtant tout le fichier s'y déverse d'un coup : la fonction va lire l'URL rangée en A1, télécharge le CSV, puis pose son en-tête Region, Ventes, Objectif et les quatre régions juste en dessous. Tu n'as rempli qu'une seule cellule pour récupérer le tableau complet, et il reste branché sur le fichier : si les ventes changent à la source, ta feuille se met à jour toute seule au prochain rafraîchissement.
Exemple 2

Comment changer de source sans toucher à la formule avec la fonction IMPORTDATA

Le mois dernier, ta feuille affichait les ventes par région. Ce mois-ci, tu as besoin d'y voir les taux de TVA par pays, mais tu ne veux surtout pas reconstruire ta formule ni casser la mise en page qui l'entoure. Comme l'adresse du fichier vit dans une cellule à part, tu changes de source en modifiant une seule cellule. La fonction IMPORTDATA relit la nouvelle URL et remplace tout le tableau.

Les étapes
  1. 1
    Dans une cellule, écris =IMPORTDATA(.
  2. 2
    En 1er argument : clique sur la cellule qui contient l'adresse du fichier, A1. Par rapport au mois dernier, la formule ne bouge pas d'un caractère et tu as seulement remplacé le contenu d'A1 par la nouvelle adresse https://data.excellersacademy.com/media/videos/fixtures/taux-tva.csv. Comme elle pointe une cellule et non une adresse écrite en dur, piloter la source revient à réécrire ce seul texte.
  3. 3
    Ferme la parenthèse et appuie sur Entrée. Google Sheets relit A1, télécharge cette fois le fichier des taux de TVA et remplace l'ancien tableau par le nouveau : l'en-tête Pays, Taux TVA, puis la France, l'Allemagne, l'Espagne, l'Italie et la Belgique.
Voici la formule que tu obtiens à la fin :=IMPORTDATA(A1)
Explication
La formule en A3 n'a pas bougé d'un caractère : c'est toujours =IMPORTDATA(A1). Tu as seulement remplacé l'URL en A1 par celle du fichier des taux de TVA, et tout le tableau a suivi : Pays, Taux TVA, puis les cinq pays. C'est tout l'intérêt de garder l'adresse dans une cellule plutôt que dans la formule : tu pilotes la source depuis A1, sans jamais rouvrir la fonction.
Exemple 3

Comment récupérer des dates et des nombres directement calculables avec la fonction IMPORTDATA

Tu suis le cours de l'euro face au dollar dans un fichier mis à jour chaque jour, et tu veux calculer directement une moyenne ou une variation dans ta feuille. Le piège habituel d'un import, c'est que tout arrive en texte : les nombres refusent de s'additionner et les dates ne se trient plus. Avec IMPORTDATA, les valeurs gardent leur vraie nature, et tu peux calculer dessus dès la première seconde.

Les étapes
  1. 1
    Dans une cellule, écris =IMPORTDATA(.
  2. 2
    En 1er argument : clique sur la cellule qui contient l'adresse du fichier, A1. Elle porte l'URL https://data.excellersacademy.com/media/videos/fixtures/cours-eur-usd.csv, dont chaque ligne aligne une date et un cours séparés par une virgule.
  3. 3
    Ferme la parenthèse et appuie sur Entrée. Les trois dates se rangent dans la colonne A et les trois cours dans la colonne B, sans rester bloqués en texte : 2026-07-17 devient une vraie date et 1.0842 un vrai nombre décimal, affiché 1,0842 dans un tableur réglé en français. Leur alignement à droite le confirme, et un calcul comme =MOYENNE(B4:B6) ou =A5-A4 tombe juste dès la première seconde.
Une fois les morceaux assemblés, ta formule donne ça :=IMPORTDATA(A1)
Explication
Un fichier CSV n'est que du texte, et pourtant la fonction ne se contente pas de le coller tel quel. En important 2026-07-17, elle reconnaît une date (alignée à droite, utilisable dans un calcul de durée), et en important 1.0842, elle reconnaît un nombre décimal, affiché 1,0842 dans un tableur réglé en français. Rien ne reste bloqué en texte : tu peux enchaîner une moyenne des trois cours ou un écart entre deux dates sans la moindre conversion.
Exemple 4

Comment lever l'erreur #REF! d'autorisation avec la fonction IMPORTDATA

Tu écris ta toute première formule IMPORTDATA, l'adresse est bonne, et pourtant la cellule affiche #REF!. Avant de soupçonner une erreur de saisie, sache que c'est le passage obligé de toutes les fonctions d'import de Google Sheets : la feuille te demande d'abord la permission d'aller chercher des données à l'extérieur. Une fois l'accès accordé, la même formule fonctionne sans broncher.

Les étapes
  1. 1
    Dans une cellule, écris =IMPORTDATA(.
  2. 2
    En 1er argument : clique sur la cellule qui contient l'adresse du fichier, A1. Elle porte la même URL qu'au premier exemple, https://data.excellersacademy.com/media/videos/fixtures/ventes-regions.csv, et cette adresse est parfaitement valide.
  3. 3
    Ferme la parenthèse et appuie sur Entrée. La cellule affiche pourtant #REF!, et un bandeau s'ouvre en haut de la feuille, « Certaines formules tentent d'envoyer et de recevoir des données de tiers externes » : c'est une demande d'autorisation, pas une formule cassée. Clique sur « Autoriser l'accès » dans ce bandeau et le tableau des ventes se déverse aussitôt à partir de la cellule de la formule. Cette permission ne te sera plus redemandée pour cette feuille.
En mettant tout bout à bout, tu écris :=IMPORTDATA(A1)
Explication
Ce #REF! n'a rien d'une faute de formule : au tout premier appel d'une fonction d'import, Google affiche un bandeau « Certaines formules tentent d'envoyer et de recevoir des données de tiers externes » avec un bouton « Autoriser l'accès », et tant que tu ne cliques pas, la cellule reste bloquée sur #REF!. Un clic, et le fichier se déverse enfin : Region, Ventes, Objectif et les quatre régions. Cette autorisation ne se donne qu'une fois par feuille.
Le combo gagnant
Enveloppe IMPORTDATA dans QUERY pour filtrer sans jamais toucher au fichier source : =QUERY(IMPORTDATA(url); « SELECT * WHERE Col3 > 100 ») ne garde que les lignes qui t'intéressent. Ta source reste brute, ta vue filtrée vit juste à côté.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction IMPORTDATA

Tout ce qui bloque IMPORTDATA tourne autour de l'accès à l'URL et du format du fichier. Si tu vois « Impossible d'importer les données », c'est presque toujours que l'adresse mène à une page web (et non aux octets bruts du CSV) ou qu'elle réclame une authentification, que la fonction ne sait pas fournir.

Les deux autres pièges sont plus discrets : un fichier en JSON ou XML qu'IMPORTDATA refuse de parser, et un CSV européen en point-virgule qui se retrouve tassé dans une seule colonne faute de bon délimiteur.

"Impossible d'importer les données à l'URL demandée"

Cette erreur survient dans plusieurs cas : l'URL n'est pas accessible publiquement, elle nécessite une authentification, le format n'est ni CSV ni TSV, l'URL pointe vers une page HTML qui contient un lien vers le fichier (et non le fichier lui-même), ou le serveur bloque les requêtes provenant de Google.

Solution : Vérifie d'abord que l'URL pointe directement vers le fichier de données brutes (ouvre-la dans ton navigateur : tu dois voir du texte brut avec des virgules ou des tabulations, pas une page web). Assure-toi que le fichier est accessible sans connexion ni cookie de session.

L'URL nécessite une authentification

IMPORTDATA ne peut pas transmettre de credentials : pas de mot de passe, pas de token OAuth dans les headers, pas de cookie de session. Les URL derrière un login ou une clé d'API en header sont inaccessibles.

Solution : Configure ton serveur pour générer une URL publique temporaire avec un token de sécurité dans l'URL elle-même (ex: ?token=abc123). Sinon, utilise Apps Script avec UrlFetchApp qui supporte l'authentification avancée. Dans Excel, Power Query gère nativement les flux authentifiés.

Format JSON ou XML non supporté

IMPORTDATA n'accepte que CSV et TSV. Si ton API retourne du JSON ou du XML, la fonction renvoie une erreur car elle ne sait pas comment parser ces formats.

Solution : Pour XML : utilise IMPORTXML avec des requêtes XPath. Pour JSON : crée une fonction Apps Script pour parser les données ou configure ton API pour générer aussi un export CSV. Un service comme Zapier peut aussi convertir JSON en CSV automatiquement.

Données dans une seule colonne au lieu d'être réparties

Google Sheets n'a pas correctement détecté le délimiteur. Ce problème apparaît souvent avec les CSV européens qui utilisent le point-virgule comme séparateur au lieu de la virgule, ou avec des fichiers qui utilisent un délimiteur non standard.

Solution : Spécifie le délimiteur explicitement en deuxième argument : =IMPORTDATA(url; ";") pour un CSV avec point-virgule. Vérifie aussi que ton fichier source est encodé en UTF-8 pour éviter les problèmes d'accents dans les données.

Les données ne se rafraîchissent pas

Google Sheets met à jour IMPORTDATA environ toutes les heures, mais certains facteurs peuvent bloquer le rafraîchissement : le serveur envoie des headers de cache (Cache-Control, Expires), le contenu du fichier n'a pas changé (Google optimise les requêtes), ou les modifications sont très récentes.

Solution : Pour forcer un rafraîchissement immédiat : édite légèrement la formule (ajoute un espace dans l'URL puis supprime-le) et appuie sur Entrée. Tu peux aussi utiliser le menu Données > Calculer maintenant dans Google Sheets.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

IMPORTDATA vs IMPORTXML vs IMPORTHTML vs IMPORTRANGE

Le bon choix dépend de ce que tu vises au bout de l'URL. Prends IMPORTDATA quand le serveur te sert déjà un fichier CSV ou TSV propre (exports d'API, datasets open data) ; bascule sur IMPORTHTML pour aspirer un tableau ou une liste directement dans une page web, et sur IMPORTXML quand il faut piocher des éléments précis via XPath (scraping fin, flux RSS).

IMPORTRANGE joue dans une autre cour : il ne lit pas une URL publique mais une plage d'un autre Google Sheets, avec une autorisation à valider une fois entre les deux documents.

CritèreIMPORTDATAIMPORTXMLIMPORTHTMLIMPORTRANGE
Source de donnéesURL publiqueURL publiqueURL publiqueAutre Google Sheets
Format supportéCSV, TSVXML, HTML (XPath)Tableaux HTML, listesPlage de cellules
AuthentificationAucuneAucuneAucuneAutorisation manuelle requise
Cas d'usage typiqueExports API, datasets open dataWeb scraping, flux RSSExtraction de tableaux depuis pages webConsolidation entre tableurs Google
FAQ

Questions fréquentes

Non, IMPORTDATA est exclusive à Google Sheets. Dans Excel, l'équivalent est Power Query, accessible via l'onglet Données > À partir du web. Power Query est même plus puissant : il supporte l'authentification (tokens OAuth, Basic Auth), des transformations avant chargement (filtrage, conversion de types, fusion de sources), et une programmation via le langage M.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction IMPORTDATA : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir