Aller au contenu principal
PulsarKit

Convertir JSON en Excel

Aplatissez un export JSON ou NDJSON dans une feuille de calcul. Les objets imbriqués deviennent des colonnes en notation pointée et chaque enregistrement apporte ses clés.

Déposez vos fichiers ici

.json, .ndjson, .txt · jusqu’à 300 Mo

Plus de réglages

Comment convertir en Excel

  1. 1

    Déposez un fichier JSON ou collez le texte

    Le JSON brut comme le NDJSON à lignes séparées sont acceptés. Une réponse collée fonctionne aussi bien qu’un fichier.

  2. 2

    Indiquez le tableau et le mode d’aplatissement

    Si les enregistrements se trouvent sous data.items, indiquez-le. Choisissez si les objets imbriqués deviennent des colonnes et comment représenter les tableaux.

  3. 3

    Convertissez et téléchargez le XLSX

    Le classeur s’ouvre directement sur un tableau, avec la ligne d’en-tête figée et des largeurs de colonnes déjà ajustées au contenu.

Les réponses d’API ne sont pas des tableaux

Presque aucune charge utile réelle n’est un simple tableau. Elle est enveloppée dans un objet de statut, les enregistrements se trouvent sous data.items ou result.rows, et chaque enregistrement contient des objets imbriqués. C’est pour cela que le chemin vers les enregistrements est la première chose que cet outil vous demande au lieu d’être deviné. Un mauvais choix produit une feuille de calcul à une seule ligne décrivant l’enveloppe, qui a l’air de fonctionner mais ne sert à rien. Si le chemin ne mène à rien, l’erreur liste les clés réellement présentes au premier niveau pour que la tentative suivante s’appuie sur des informations et non sur un nouvel essai au hasard.

Les colonnes viennent de tous les enregistrements, pas du premier

Le bug le plus courant dans un code maison JSON-vers-table est de déduire la liste des colonnes du premier enregistrement. Dans un export réel, les enregistrements sont irréguliers : un champ e-mail facultatif n’apparaît qu’à la deuxième entrée, une remise seulement sur celles qui en ont. Ici chaque enregistrement est parcouru et la liste des colonnes est l’union de toutes leurs clés, dans l’ordre de première apparition, pour que rien ne disparaisse en silence. Les lignes qui n’ont pas une colonne reçoivent une cellule vide plutôt qu’une valeur décalée. Si vous voulez délibérément ne garder que la forme du premier enregistrement, c’est un réglage possible, mais ce n’est pas le choix par défaut, car perdre des données discrètement est pire qu’une feuille large.

Imbrication, tableaux et limites d’une cellule

Un objet imbriqué devient des colonnes nommées user.address.city jusqu’à la profondeur que vous autorisez. Au-delà, les branches plus profondes sont écrites en JSON compact plutôt qu’éclatées, car une réponse GraphQL entièrement développée peut produire vingt mille colonnes alors qu’Excel s’arrête à 16 384. Les tableaux ont trois traitements possibles : réunis dans une seule cellule avec un séparateur que vous choisissez, étalés sur des colonnes tags.0 à tags.N, ou écrits comme chaîne JSON. Le bon choix dépend uniquement de ce que vous comptez faire ensuite. Les chaînes de plus de 32 767 caractères sont tronquées avec une indication, car cette limite est celle de la cellule elle-même.

Rien ne quitte votre navigateur

L’analyse, l’aplatissement et l’écriture du classeur se font localement dans cet onglet. Un export d’API contient souvent des fiches clients ou des jetons d’accès, il est donc utile de le préciser clairement : aucun envoi, aucun traitement côté serveur et aucune copie conservée.

Questions fréquentes

Comment traiter les objets imbriqués ?

Par défaut, ils deviennent des colonnes en notation pointée comme user.address.city, jusqu’à la profondeur que vous définissez. Au-delà, la branche restante est stockée comme chaîne JSON compacte pour ne rien perdre, et vous pouvez aussi forcer tous les objets à être stockés de cette façon.

Comment indiquer le tableau d’enregistrements ?

Saisissez son chemin avec des points, par exemple data.items ou result.rows.0. S’il ne mène à rien, le message d’erreur affiche les clés de premier niveau de votre fichier pour que vous voyiez où se trouvent vraiment les enregistrements.

Que deviennent les tableaux dans un enregistrement ?

Vous choisissez. Le mode fusion les place dans une seule cellule séparée par une chaîne que vous indiquez, le mode colonnes les étale sur tags.0 à tags.N jusqu’à cinquante, et le mode JSON stocke le tableau comme texte. Le mode fusion est le choix par défaut car c’est celui qui se lit le mieux dans une feuille de calcul.

Pourquoi mes enregistrements ont-ils des champs différents ?

C’est normal dans les exports d’API, et c’est géré : la liste des colonnes est l’union des clés de tous les enregistrements, dans l’ordre de première apparition. Les enregistrements qui n’ont pas un champ obtiennent une cellule vide plutôt qu’une ligne décalée.

Quelles sont les limites de lignes et de colonnes d’Excel ?

1 048 576 lignes et 16 384 colonnes. Tout dépassement est refusé avec une explication et un lien vers un convertisseur CSV, qui n’a pas cette limite.

Le NDJSON est-il pris en charge ?

Oui. Un fichier avec l’extension .ndjson est analysé à raison d’un enregistrement par ligne. En cas d’erreur de syntaxe, la ligne exacte est indiquée au lieu d’un simple décalage dans une chaîne de cent mégaoctets.

Mon fichier est-il envoyé sur un serveur ?

Non. Tout, de l’analyse à l’écriture du XLSX, se fait dans votre navigateur, sans serveur impliqué et sans rien conserver après la fermeture de l’onglet.

Outils associés