ExplicationExcel en JSON

Excel en JSON : comment sont exportées plusieurs feuilles, les dates et les formules

ParDéveloppeur logiciel
Publié le 4 min de lecture
Une feuille Excel agrandie à côté de grilles, qui représente l'export des données d'un classeur en JSON

Quand un classeur Excel a une seule feuille, le JSON obtenu est un tableau d'objets ligne. Quand il en a plusieurs, le résultat est un objet dont les clés sont les noms des feuilles et dont les valeurs sont ces tableaux. Les formules exportent leurs valeurs calculées, et les dates sont exportées sous forme de chaînes date-heure ISO 8601.

Connaître ces règles à l'avance aide à écrire le code qui lit le fichier. Chaque cas ci-dessous montre ce que produit le convertisseur Excel en JSON.

Sur cette page
  1. Une feuille ou plusieurs feuilles
  2. Que deviennent les formules ?
  3. Comment les dates sont-elles exportées ?
  4. En-têtes vides, en double ou désordonnés
  5. Cellules vides, cellules fusionnées et booléens
  6. Lire le résultat multi-feuilles dans le code
  7. Détails Excel en JSON : FAQ

À retenir

  • Une feuille produit un tableau ; plusieurs feuilles produisent un objet indexé par nom de feuille.
  • Les formules exportent la dernière valeur calculée par Excel, pas le texte de la formule.
  • Les cellules de date deviennent des chaînes ISO 8601 ; vérifiez une date en tenant compte de votre fuseau horaire.
  • Les en-têtes vides reçoivent des clés génériques et les en-têtes en double un suffixe numéroté.

Une feuille ou plusieurs feuilles

Classeur avec une feuille
[
  { "name": "Ana", "team": "Sales" }
]
Classeur avec deux feuilles : People et Teams
{
  "People": [ { "name": "Ana", "team": "Sales" } ],
  "Teams": [ { "team": "Sales", "lead": "Ben" } ]
}

Les noms de feuilles deviennent des clés exactement tels qu'ils sont écrits, espaces compris : en JavaScript, vous liriez une feuille appelée Ventes T1 avec data["Ventes T1"]. Les feuilles vides apparaissent sous forme de tableaux vides.

Que deviennent les formules ?

Chaque cellule contenant une formule exporte la valeur qu'Excel a enregistrée lors du dernier calcul du classeur. Une cellule contenant =B2*C2 qui affiche 49,8 est exportée sous la forme 49.8. La formule elle-même n'est pas incluse, car les programmes qui lisent du JSON ont presque toujours besoin du résultat.

Si un classeur a été enregistré par un outil qui ne stocke pas les valeurs calculées, ouvrez-le dans Excel, laissez-le recalculer et enregistrez-le avant la conversion.

Comment les dates sont-elles exportées ?

Le JSON n'a pas de type date : les vraies cellules de date Excel sont donc écrites sous forme de chaînes ISO 8601 comme "2026-10-09T00:00:00.000Z". N'importe quel code sait analyser ce format. Les dates saisies en texte dans Excel restent du texte, exactement comme elles ont été tapées.

En-têtes vides, en double ou désordonnés

Comment les cellules d'en-tête deviennent des clés
Ligne d'en-têteClé JSON
namename
Prix unitaire (€)Prix unitaire (€)
(vide)Une clé générique comme __EMPTY
name (deuxième fois)name_1

La première ligne de chaque feuille est toujours traitée comme l'en-tête. Si votre feuille commence par un titre ou une ligne de logo, supprimez-la pour que les vrais noms de colonnes soient en ligne 1.

Cellules vides, cellules fusionnées et booléens

  • Les cellules vides deviennent null.
  • Les cellules fusionnées ne gardent leur valeur que dans la cellule en haut à gauche ; les autres cellules de la fusion sont vides et deviennent null. Annulez la fusion et recopiez la valeur vers le bas avant la conversion si chaque ligne en a besoin.
  • Les cellules VRAI et FAUX deviennent des booléens JSON.
  • Les nombres gardent la valeur stockée complète, pas le nombre arrondi affiché à l'écran.

Pour les étapes de base, lisez comment convertir un fichier Excel en JSON. Pour retransformer un JSON modifié en classeur, utilisez JSON en Excel.

Lire le résultat multi-feuilles dans le code

JavaScript
const data = await fetch("/workbook.json").then((r) => r.json());
const sheets = Array.isArray(data) ? { Sheet1: data } : data;
for (const [name, rows] of Object.entries(sheets)) {
  console.log(name, rows.length, "rows");
}

Ce modèle gère les deux structures, un tableau unique ou un objet de feuilles : votre code continue de fonctionner si quelqu'un ajoute plus tard une deuxième feuille au classeur.

Détails Excel en JSON : FAQ

Comment plusieurs feuilles Excel sont-elles exportées en JSON ?

Sous la forme d'un objet dont les clés sont les noms des feuilles et dont les valeurs sont des tableaux d'objets ligne.

La conversion Excel en JSON conserve-t-elle les formules ?

Non. Elle exporte les valeurs calculées, ce dont la plupart des applications ont besoin.

Dans quel format sont les dates ?

En chaînes ISO 8601, comme 2026-10-09T00:00:00.000Z. Comparez une valeur avec votre feuille en cas de décalage de fuseau horaire.

Pourquoi mon JSON contient-il des clés comme __EMPTY ?

Une colonne de la ligne d'en-tête n'a pas de nom. Ajoutez un en-tête à cette colonne et convertissez à nouveau.

Pourquoi les nombres ont-ils plus de décimales que dans Excel ?

Le JSON contient la valeur stockée. Le format d'affichage d'Excel peut l'arrondir à l'écran.

Connaissez la structure avant de coder

Les feuilles deviennent des clés, les formules des valeurs et les dates des chaînes ISO. Avec ces règles en tête, vous préparez le classeur une fois et lisez le JSON sans surprise.

À lire ensuite