Bộ chuyển đổi Excel sang JSON

Chuyển đổi Excel sang JSON trực tuyến — miễn phí, tức thì và riêng tư. Tệp của bạn được xử lý ngay trong trình duyệt, tuyệt đối không tải lên máy chủ.

Kết quả

Các tệp đã chuyển đổi và bản xem trước sẽ xuất hiện ở đây.

Sẵn sàng. Hãy chọn một tệp bảng để chuyển đổi.

Nguyên lý chuyển đổi

  • Hàng đầu tiên được đọc làm tiêu đề — các ô của nó sẽ trở thành tên trường trong JSON, và mỗi hàng tiếp theo sẽ trở thành một đối tượng (object).
  • Chỉ trang tính (sheet) đầu tiên của bảng tính được đọc.

Tệp bảng của bạn được chuyển đổi trực tiếp trong trình duyệt. Không có dữ liệu nào được tải lên BroBroGo.

Câu hỏi thường gặp

Làm cách nào để chuyển đổi Excel sang JSON?

Thả tệp Excel của bạn vào và nhấp vào chuyển đổi — tệp JSON sẽ sẵn sàng để tải xuống trong vài giây, đi kèm với bản xem trước kết quả. Mọi quy trình đều chạy trực tiếp trên thiết bị của bạn.

Tôi có thể chuyển đổi tệp có dung lượng tối đa là bao nhiêu?

Hỗ trợ tối đa 8 MB, 10.000 hàng và 200 cột cho mỗi tệp. Với các tập dữ liệu lớn hơn, tốt nhất bạn nên chia nhỏ chúng thành các tệp nhỏ trước khi thực hiện.

Chuyển đổi XLSX sang JSON: Giữ nguyên kiểu dữ liệu, xử lý trên trình duyệt

Việc chuyển đổi một tệp Excel (XLSX) sang JSON khác hoàn toàn so với chuyển sang CSV. Một tệp XLSX thực chất là một kho lưu trữ ZIP chứa nhiều tệp XML, có khả năng mang nhiều trang tính, nhiều kiểu ô (văn bản, số, ngày tháng, boolean), công thức và định dạng phong phú. JSON, ngược lại, là một định dạng có kiểu dữ liệu và có cấu trúc lồng nhau – nó hỗ trợ đối tượng, mảng, số, boolean và null. Chính sự khác biệt này tạo ra giá trị cốt lõi của công cụ: các giá trị số, boolean và null trong Excel được giữ nguyên dưới dạng JSON có kiểu, thay vì bị ép thành chuỗi có dấu ngoặc kép như CSV. Trang này thực hiện việc chuyển đổi này hoàn toàn trong trình duyệt – không có dữ liệu nào được tải lên máy chủ.

Cơ chế hoạt động và xử lý hoàn toàn trên trình duyệt

Công cụ sử dụng JavaScript ở phía máy khách để đọc trực tiếp tệp XLSX do người dùng chọn. Quá trình diễn ra như sau:

  1. Nhập tệp: Người dùng có thể kéo thả tệp hoặc dùng hộp chọn tệp để tải lên một tệp XLSX.
  2. Phân tích cú pháp: Trình duyệt của bạn phân tích cú pháp tệp XLSX – một gói ZIP gồm các phần XML – và ghi kết quả đầu ra đã chuyển đổi trên thiết bị của bạn.
  3. Ánh xạ kiểu dữ liệu: Mỗi ô được chuyển đổi thành giá trị JSON tương ứng dựa trên kiểu dữ liệu gốc của nó (xem bảng bên dưới).
  4. Tạo xuất: Dữ liệu được tổ chức thành một mảng các đối tượng, với hàng đầu tiên của bảng dùng làm tên khóa. Kết quả JSON có thể được tải xuống dưới dạng tệp.

Lợi ích lớn nhất của xử lý trên trình duyệt là tính riêng tư. Vì không có dữ liệu nào rời khỏi máy của người dùng, công cụ này phù hợp với các tình huống nhạy cảm như báo cáo tài chính, dữ liệu nhân sự hoặc thông tin đối tác. Người dùng không cần lo lắng về việc tải lên máy chủ của bên thứ ba.

Ánh xạ kiểu dữ liệu và những gì bị loại bỏ

Bảng dưới đây tóm tắt cách các kiểu ô Excel phổ biến được chuyển đổi sang giá trị JSON:

Kiểu ô Excel Kiểu JSON tương ứng Ví dụ
Số (nguyên hoặc dấu phẩy động) Số JSON 42, 3.1415, -7.99e2
Boolean Boolean JSON true hoặc false
Ngày / Ngày giờ Chuỗi ISO 8601 "2023-08-15T14:30:00.000Z"
Chuỗi chia sẻ / văn bản nội tuyến Chuỗi JSON "Báo cáo hàng quý"
Ô trống Chuỗi rỗng "" (không có gì)
Lỗi Chuỗi JSON "#DIV/0!"

Lưu ý về ngày tháng: Excel không có kiểu ngày tháng JSON gốc. Một ô ngày tháng được lưu trữ dưới dạng số sê-ri (ví dụ: 45144 cho ngày 15 tháng 8 năm 2023), và công cụ chuyển đổi ghi nó dưới dạng chuỗi ISO 8601 theo giờ UTC, chẳng hạn như "2023-08-15T00:00:00.000Z". Nếu bạn cần một định dạng khác, bạn phải xử lý hậu kỳ JSON. Điều tương tự cũng áp dụng cho tỷ lệ phần trăm và tiền tệ – chúng được lưu trữ dưới dạng số trong XLSX, vì vậy chúng trở thành số trong JSON. Giá trị phần trăm 12.5% xuất hiện dưới dạng 0.125, không phải "12.5%". Công cụ không giữ lại mặt nạ định dạng cơ bản; nó chỉ đọc giá trị số được lưu trữ.

Những gì bị loại bỏ:

  • Chỉ trang tính đầu tiên của tệp XLSX được đọc.
  • Định dạng ô (phông chữ, màu sắc, đường viền).
  • Các ô hợp nhất (merged cells): chỉ giá trị của ô trên cùng bên trái được giữ; các ô hợp nhất còn lại trở thành chuỗi rỗng.
  • Công thức: chỉ giá trị đã lưu được đọc. Nếu sổ làm việc chứa các hàm biến động (NOW(), RAND()) chưa được tính toán lại trước khi lưu, JSON đầu ra sẽ sử dụng kết quả được lưu trong bộ nhớ cache đã cũ.
  • Tên tệp, tên trang tính và bất kỳ phạm vi được đặt tên nào không được giữ lại trong JSON đầu ra.

Các giới hạn và thông báo lỗi cụ thể

Công cụ áp dụng một số giới hạn rõ ràng để đảm bảo hiệu suất và độ tin cậy:

Loại giới hạn Mô tả Thông báo lỗi nếu vi phạm
Kích thước tệp Tối đa 8 MB “This file is too large. Use a file under ‹max›.”
Số hàng Tối đa 10.000 hàng “Tệp này không có hàng bảng nào.” (nếu không có hàng nào)
Số cột Tối đa 200 cột “Tệp này không có hàng bảng nào.” (nếu không có cột nào)

Các thông báo lỗi khác bao gồm:

  • “Choose a CSV, JSON or XLSX file.” – tệp đã chọn không phải là tệp CSV, JSON hoặc XLSX.
  • “This Excel file could not be opened.” – XLSX bị hỏng, không thực sự là một kho lưu trữ ZIP, hoặc vi phạm đặc tả OOXML.
  • “Tệp này không có hàng bảng nào.” – trang tính đầu tiên hoàn toàn trống. Một trang tính chỉ có hàng tiêu đề không phải là lỗi: nó chuyển đổi thành một mảng trống (``).
  • “Could not convert this file.” – một lỗi không mong muốn không khớp với lỗi cụ thể hơn.
  • “Conversion cancelled.” – bạn đã hủy chuyển đổi, ví dụ bằng cách xóa tệp đã chọn trong khi nó đang chạy.
  • “This conversion is taking too long. Try a smaller file.” – quá trình chuyển đổi đã vượt quá giới hạn khoảng 12 giây, thường là do sổ làm việc quá lớn.

Nếu bạn thấy lỗi “quá lớn” hoặc “quá lâu”, cách khắc phục duy nhất là giảm số lượng hàng hoặc cột. Chia XLSX thành các tệp nhỏ hơn và chuyển đổi từng tệp riêng biệt thường có hiệu quả.

Ai nên sử dụng công cụ này và các tình huống thực tế

  1. Nhà phát triển web: Nhận dữ liệu danh mục sản phẩm dưới dạng tệp XLSX từ nhóm tiếp thị. Họ cần tải nó dưới dạng JSON vào một thành phần React hoặc một API REST. Việc chuyển đổi có kiểu giúp họ không phải viết một vòng lặp gọi Number() trên mọi trường chuỗi.

  2. Nhà phân tích dữ liệu: Xuất một bảng từ báo cáo tài chính hàng quý dưới dạng XLSX. Họ muốn chạy một tập lệnh Python mong đợi đầu vào JSON. Thay vì mở Excel, xuất CSV và viết một tập lệnh CSV sang JSON, họ sử dụng công cụ trình duyệt trong vài giây.

  3. Người dùng quan tâm đến quyền riêng tư: Xử lý danh sách nhân viên hoặc dữ liệu y tế. Họ biết rằng bất kỳ việc tải lên dịch vụ đám mây nào cũng có thể được lưu trữ hoặc xử lý bên ngoài. Việc chuyển đổi phía máy khách đảm bảo dữ liệu vẫn ở cục bộ. Không tài khoản, không đăng nhập, không máy chủ.

Cả ba đều có cùng nhu cầu: một chuyển đổi nhanh, có kiểu, không yêu cầu cài đặt và không cần tin tưởng vào máy chủ từ xa.

Hạn chế về cấu trúc bảng và cách xử lý

Bảng dữ liệu trong Excel thường có dạng hình chữ nhật: mỗi cột có một tiêu đề, mỗi hàng là một bản ghi. Công cụ giả định rằng hàng đầu tiên của bảng chứa tên các khóa. Tuy nhiên, trong thực tế, bảng Excel có thể có các vấn đề sau:

  • Hàng tiêu đề nhiều dòng: Nếu hàng đầu tiên là một ô hợp nhất hoặc có cấu trúc nhiều dòng, công cụ sẽ chỉ lấy dòng đầu tiên làm khóa. Các dòng tiếp theo bị coi là dữ liệu, có thể gây ra lỗi cấu trúc.
  • Hàng hoặc cột ẩn: Công cụ chỉ đọc “giá trị hiển thị”. Các hàng/cột bị ẩn vẫn có thể được đọc tùy theo cách lưu trữ, nhưng thường chúng bị bỏ qua hoặc không được hiển thị. Người dùng nên hiển thị tất cả dữ liệu cần thiết trước khi chuyển đổi.
  • Các ô trống hoặc null: Ô không có dữ liệu sẽ chuyển thành chuỗi rỗng "" trong JSON.
  • Bảng không chữ nhật: Ví dụ bảng có một số ô hợp nhất trải dài nhiều cột. Công cụ xử lý các ô hợp nhất bằng cách chỉ lấy giá trị của ô trên cùng bên trái, các ô khác trong vùng hợp nhất trở thành chuỗi rỗng. Điều này có thể làm sai lệch dữ liệu nếu người dùng không kiểm tra trước.

Để tránh các lỗi này, người dùng nên đảm bảo bảng dữ liệu có dạng chuẩn: một hàng tiêu đề, các hàng dữ liệu không có ô hợp nhất, không có hàng/cột ẩn không cần thiết.

Câu hỏi thường gặp (FAQ)

1. Tại sao chỉ lấy trang tính đầu tiên? Không. Công cụ chỉ đọc trang tính đầu tiên. Nếu bạn cần dữ liệu từ một trang tính khác, trước tiên bạn phải di chuyển trang tính đó đến vị trí đầu tiên trong Excel trước khi tải lên, hoặc sử dụng một công cụ hỗ trợ chọn trang tính.

2. Làm cách nào để lấy dữ liệu từ trang tính thứ hai? Không. Công cụ chỉ đọc trang tính đầu tiên. Nếu bạn cần dữ liệu từ một trang tính khác, trước tiên bạn phải di chuyển trang tính đó đến vị trí đầu tiên trong Excel trước khi tải lên, hoặc sử dụng một công cụ hỗ trợ chọn trang tính.

3. Tại sao công thức không được tính toán lại? Công cụ đọc giá trị được lưu trong bộ nhớ cache cùng với công thức trong XLSX. Nó không tính toán lại công thức. Nếu bạn cần kết quả đã tính toán, hãy mở tệp trong Excel, lưu nó (điều này kích hoạt tính toán lại), và sau đó chuyển đổi tệp đã lưu.

4. Dữ liệu ngày tháng trong JSON trông như thế nào? Ngày tháng được chuyển đổi thành chuỗi ISO 8601 (ví dụ: "2023-08-15T00:00:00.000Z"). Mặt nạ định dạng Excel gốc bị loại bỏ. Nếu bạn cần một định dạng ngày cụ thể, bạn phải xử lý hậu kỳ chuỗi ISO.

5. Có thể chuyển đổi tệp XLSX có dung lượng lớn không? Có. Các tệp bị giới hạn ở 8 MB và các bảng bị giới hạn ở 10.000 hàng và 200 cột. Nếu bất kỳ giới hạn nào bị vượt quá, quá trình chuyển đổi sẽ dừng lại với một thông báo lỗi rõ ràng.

6. Tôi có cần cài đặt phần mềm nào không? Không. Công cụ chạy hoàn toàn trên trình duyệt (Chrome, Firefox, Edge, Safari) mà không cần cài đặt thêm bất kỳ plugin nào. Chỉ cần kết nối internet để tải trang lần đầu, sau đó toàn bộ quá trình diễn ra ngoại tuyến.