Utilia

JSON naar Excel omzetten

Zet een JSON-array of geneste JSON om naar een Excel-bestand (.xlsx) met koprij, kolombreedtes, vaste koprij en één blad per array. Werkt in je browser.

Opties

Zo zet je JSON om naar Excel

  1. Plak je JSON in JSON-gegevens, of sleep een .json-bestand naar het uploadvak. Voorbeeld laden laat zien wat voor gegevens de tool verwacht.
  2. Bekijk het Voorbeeld: het toont de kolommen en de eerste 100 rijen van elk blad zoals ze in Excel verschijnen. Bevat de JSON een fout, dan noemt de melding de regel en kolom, en toont ze de foute regel met een dakje onder het probleem.
  3. Pas zo nodig de Opties aan en klik op Excel-bestand downloaden (.xlsx).

Het bestand wordt in je browser gemaakt met de bibliotheek SheetJS. Je JSON wordt nooit geüpload, dus API-antwoorden, exports uit interne systemen of klantgegevens blijven op je apparaat.

Hoe de JSON rijen en bladen wordt

De gebruikelijke invoer is een array van objecten, zoals [{"id": 1, "name": "Ana"}, …]: elk object wordt een rij en elke sleutel een kolom. Sleutels worden uit alle objecten verzameld in de volgorde waarin ze voor het eerst voorkomen, dus records zonder een bepaalde sleutel krijgen gewoon een lege cel.

  • Geneste objecten: met Geneste objecten afvlakken tot kolommen (address.city) geeft {"address": {"city": "Utrecht"}} een kolom address.city, op elke diepte. Vink het uit om de JSON-tekst van het object in één cel address te zetten.
  • Lijsten binnen een record: Eén cel, gescheiden door komma’s (a, b) leest het makkelijkst; Eén kolom per item (tags.0, tags.1) is het best als je op elk item wilt filteren; Eén cel, als JSON-tekst behoudt de exacte structuur. Lijsten van objecten worden in het eerste geval als JSON-tekst geschreven.
  • Meerdere tabellen: met Eén blad per array op het hoogste niveau levert een JSON-object als {"customers": [...], "orders": [...]} een werkmap op met een blad customers en een blad orders. Een omhulsel als {"data": [...]} wordt uitgepakt. Bladnamen worden aangepast aan de regels van Excel: maximaal 31 tekens en geen \ / ? * [ ] :.
  • Arrays van arrays zoals [["a", 1], ["b", 2]] worden geschreven zoals ze zijn, zonder koprij.

Typen, datums en de limieten van Excel

Getallen blijven getallen, true en false worden Excel-booleans, null geeft een lege cel en tekst blijft tekst: een string die met = begint, wordt nooit een formule. Met ISO-datums (2026-09-30) omzetten naar Excel-datums worden strings als 2026-09-30 of 2026-09-30T14:05:00Z echte datums waarop je kunt sorteren en filteren; de tijd blijft zoals geschreven en een eventuele tijdzoneverschuiving vervalt. Gehele getallen van meer dan 15 cijfers, zoals lange ID’s, blijven in recente browsers tekst, omdat Excel maar 15 significante cijfers opslaat en ze anders zou afronden.

De werkmap heeft een koprij, kolombreedtes die op de inhoud zijn afgestemd en, als je wilt, Koprij vastzetten en Filterknoppen aan de koprij toevoegen. Excel accepteert maximaal 1.048.576 rijen en 16.384 kolommen per blad, en 32.767 tekens per cel: de tool meldt het als je gegevens die grenzen overschrijden, en langere cellen worden ingekort.

Veelgestelde vragen

Waarom krijg ik “Fout op regel 3, kolom 1”?

De JSON is op die plek ongeldig. Veelvoorkomende oorzaken zijn een komma na het laatste item, enkele in plaats van dubbele aanhalingstekens, of commentaar. De regel wordt getoond met een dakje onder het probleem.

Kan ik diep geneste JSON omzetten?

Ja. Afvlakken werkt op elke diepte en levert kolomnamen met punten op. Heel brede resultaten kunnen de grens van 16.384 kolommen van Excel raken: kies dan één cel per lijst of vink het afvlakken uit.

Hoe krijg ik één blad per onderdeel van mijn JSON?

Zet elke tabel in een sleutel op het hoogste niveau met een array als waarde, en laat Eén blad per array op het hoogste niveau aangevinkt.

Herkent Excel mijn datums?

ISO 8601-strings worden omgezet als de datumoptie is aangevinkt. Andere notaties, zoals 30-09-2026 of 09/30/2026, blijven tekst.

Is er een maximale grootte?

Je kunt bestanden tot 50 MB hierheen slepen. De echte grens is het geheugen van je apparaat, en het voorbeeld toont alleen de eerste 100 rijen van elk blad.