Ubah Excel ke JSON
Ubah spreadsheet menjadi JSON yang bisa langsung dipakai kode Anda: array objek, array berisi array, atau satu array per kolom.
Letakkan file di sini
.xlsx, .xlsm, .xls, .ods · hingga 300 MB
Pengaturan lainnyaSembunyikan pengaturan
Cara Ubah ke JSON
- 1
Letakkan file Excel
XLSX, XLSM, XLS, dan ODS dibaca langsung di browser, dan daftar sheet muncul begitu buku kerja terbuka.
- 2
Pilih sheet dan bentuk JSON
Array objek untuk payload API, array berisi array untuk skrip yang sudah tahu kolomnya, dan bentuk per kolom untuk pustaka grafik.
- 3
Ubah dan unduh
Hasilnya JSON valid dengan indentasi pilihan Anda, siap untuk JSON.parse tanpa langkah pembersihan apa pun.
Tiga bentuk untuk tiga jenis pemakai
Array objek, yaitu satu objek per baris dengan kunci dari header, adalah bentuk yang diharapkan endpoint REST atau seeder database, dan bentuk ini menjadi pilihan bawaan. Array berisi array lebih kecil dan lebih cepat ditelusuri jika kode yang memakainya sudah tahu urutan kolom. Bentuk ini juga tetap aman saat ada header ganda atau header yang hilang, karena tidak ada kunci yang bisa bertabrakan. Bentuk per kolom membalik tabel menjadi satu array per kolom. Itulah masukan yang diinginkan sebagian besar pustaka grafik, dan menyusunnya secara manual dari data baris cukup merepotkan.
Nama kolom ganda dan nama kolom yang hilang
Spreadsheet sungguhan sering punya dua kolom bernama id, baris header yang baru muncul tiga baris di bawah banner judul, dan kolom tanpa nama yang ditambahkan seseorang di ujung. Setiap kasus itu merusak konverter yang naif. Di sini baris header adalah pengaturan, bukan asumsi. Nama ganda diberi akhiran _2, _3 dan dilaporkan, jadi Anda tahu ada penggantian nama, bukan baru menemukannya di lingkungan produksi. Perhatikan bahwa kemunculan pertama tetap memakai nama aslinya, dan itu bukan perilaku bawaan pustaka yang dipakai di baliknya. Header kosong menjadi column_2, column_5, dan seterusnya, diberi nomor sesuai posisinya sehingga tetap sama jika Anda mengekspor ulang.
Tipe data yang tetap utuh
Angka tetap angka, boolean tetap boolean, dan tanggal menjadi string ISO 8601: hanya tanggal jika waktunya tengah malam, dan timestamp lengkap jika tidak. Alasannya, nomor seri mentah Excel seperti 45730 tidak bermakna bagi semua sistem yang memakai data itu selanjutnya. Teks yang hanya tampak seperti angka, misalnya kode produk dengan nol di depan, tetap menjadi string. Sel kosong adalah satu-satunya kasus tanpa jawaban yang jelas benar, jadi Anda yang memilih: null, string kosong, atau kunci yang dihilangkan sama sekali dari objek.
Tidak ada yang diunggah
Buku kerja diurai dan JSON disusun di dalam tab browser ini. Tidak ada salinan yang dikirim ke server, tidak ada yang disimpan, dan data hilang begitu Anda menutup halaman. Ini penting jika sheet itu berisi ekspor data pelanggan.
Pertanyaan yang sering diajukan
Apa bedanya array objek dan array berisi array?
Array objek menghasilkan {"id": 1, "name": "A"} per baris, dengan header sebagai kunci, sehingga mudah dibaca dan menjelaskan dirinya sendiri. Array berisi array menghasilkan [1, "A"] per baris, dengan header sebagai entri pertama, sehingga lebih kecil dan kebal terhadap nama kolom ganda.
Header saya bukan di baris pertama. Apakah masih bisa memakai objek?
Bisa. Atur nomor baris header ke baris tempat nama kolom yang sebenarnya berada, maksimal baris ke-50. Semua yang ada di atasnya dibuang, jadi banner judul dan baris kosong pemisah tidak menimbulkan masalah.
Bagaimana dengan tanggal dan nol di depan?
Tanggal menjadi string ISO seperti 2026-03-14, bukan nomor seri Excel. Nilai yang disimpan sebagai teks, seperti kode produk 00123, tetap menjadi string dengan angka nolnya utuh.
Apakah rumus ikut diekspor?
Yang diekspor adalah nilai hasil perhitungannya. JSON tidak punya cara untuk menyatakan rumus, jadi angka hasil perhitungan terakhir sel itulah yang masuk ke hasil.
Bisakah semua sheet diekspor dalam satu file?
Bisa. Pilih semua sheet dan biarkan opsi pembungkus aktif, dan Anda mendapat satu objek dengan nama sheet sebagai kuncinya. Matikan pembungkus, dan Anda mendapat ZIP berisi file JSON terpisah untuk setiap sheet.
Bagaimana jika dua kolom punya nama yang sama?
Kolom pertama tetap memakai nama itu, kolom berikutnya diberi tambahan _2, _3, dan sebuah pemberitahuan menyebutkan kunci mana yang diganti namanya. Beralih ke bentuk array berisi array menghindari masalah ini sepenuhnya.
Apakah file saya dikirim ke server?
Tidak. Membaca buku kerja dan menyusun JSON keduanya berlangsung secara lokal di browser, tanpa unggahan dan tanpa penyimpanan sementara di mana pun.