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
À 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
[
{ "name": "Ana", "team": "Sales" }
]{
"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
| Ligne d'en-tête | Clé JSON |
|---|---|
| name | name |
| 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
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.