CSV sang Excel, và ngược lại

Đưa vào một tệp CSV để nhận .xlsx, hoặc đưa vào một workbook để nhận các tệp CSV. Số 0 ở đầu vẫn còn, chữ có dấu mở đúng trong Excel, và tệp không bao giờ rời khỏi thiết bị của bạn.

Cách hoạt động

Chuyển đổi giữa CSV và Excel chỉ là một dòng mã, và đó chính là lý do có cả nghìn công cụ chuyển đổi, cũng là lý do phần lớn trong số đó trả về một tệp sai một cách kín đáo. Việc chuyển đổi không phải phần khó. Điều quan trọng là vài thứ Excel tự làm, mà không thứ nào hiện ra trên chính máy đã thực hiện việc chuyển đổi.

Thứ nhất là bảng mã. Một tệp CSV mã UTF-8 không có dấu thứ tự byte sẽ được Excel trên Windows mở theo bảng mã ANSI, nên café thành café và mọi cái tên có dấu đều hỏng. Ba byte ở đầu tệp cho Excel biết nó đang đọc gì. Đây là lời than phiền phổ biến nhất về mọi bản xuất CSV từng được viết ra, và ở đây nó được xử lý sẵn.

Thứ hai là Excel viết lại thứ nó nhập vào. Mã bưu chính 01234 mất số 0 và thành số 1234. Một số thẻ hay số đơn hàng mười sáu chữ số thành 1,23457E+15, và các chữ số gốc bị mất chứ không phải bị ẩn. Mã sản phẩm SEPT1 thành ngày 1 tháng 9. Đó là lý do người ta đã phải viết hẳn một bài báo về tên gene, và là lý do chuyển sang một tệp .xlsx thật sự thì hơn hẳn việc đổi tên một tệp CSV: trong .xlsx kiểu của từng ô được ghi rõ, nên giá trị lưu dạng văn bản vẫn là văn bản. Những giá trị mà Excel sẽ làm thay đổi được tìm ra và ghim lại trước khi nó kịp, và số lượng được hiển thị.

Thứ ba không phải chuyện đúng sai mà là chuyện an toàn. Một ô bắt đầu bằng =, +, - hoặc @ với Excel là công thức chứ không phải văn bản, và một bảng tính dựng từ dữ liệu do người khác cung cấp là một cách chạy mã của họ trên máy mở nó. Những ô đó được đếm và báo lại chứ không bị sửa lặng lẽ, bởi viết lại dữ liệu của ai đó mà không hỏi là một cái sai thuộc loại khác.

Các quyết định nhỏ hơn cũng theo quy tắc ấy. Dấu ngăn cách được nhận biết bằng cái nào chia mọi dòng thành cùng một số trường, chứ không phải cái nào xuất hiện nhiều nhất, vì một tệp đầy văn xuôi có nhiều dấu phẩy hơn số dấu chấm phẩy trong một tệp ngăn bằng chấm phẩy. Mọi sheet của workbook đều được chuyển, không chỉ sheet đầu. Và không thứ gì trong đó đi qua máy chủ: tệp được đọc, chuyển đổi và trả về ngay trong tab trình duyệt.

Cách sử dụng

  1. 1 Chọn một tệp CSV, TSV hoặc Excel. Chiều chuyển đổi do thứ bạn đưa vào quyết định.
  2. 2 Xem lại những gì nó tìm thấy: dấu ngăn cách, các sheet, và những giá trị Excel sẽ làm thay đổi.
  3. 3 Cứ để bật "mở đúng trong Excel", trừ khi có thứ gì phía sau không nhận dấu thứ tự byte.
  4. 4 Chuyển đổi rồi tải về.

Điều nên biết

  • Tệp CSV được ghi kèm dấu thứ tự byte mà Excel cần, nên chữ có dấu không bị hỏng.
  • Số 0 ở đầu và các số dài được lưu dạng văn bản trong .xlsx, nên Excel không thể viết lại chúng.
  • Mỗi sheet trong workbook thành một tệp CSV riêng, gửi về cùng nhau trong một tệp ZIP.
  • Dấu ngăn cách được nhận biết bằng tính nhất quán chứ không phải đếm, nên văn bản đầy dấu phẩy không đánh lừa được.
  • Những ô Excel sẽ chạy như công thức được đếm và báo lại, không bị sửa lặng lẽ.

Trình duyệt hỗ trợ

  • Chrome 94 trở lên
  • Firefox 93 trở lên
  • Safari 16.4 trở lên
  • Edge 94 trở lên

Đây là các phiên bản cũ nhất có đủ những gì công cụ dùng. Chúng được tính ra từ chính công cụ, nên thay đổi theo công cụ.

Số phiên bản được kiểm tra ngày 2026-09-04.

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

Vì sao tệp CSV của tôi mở bị lỗi trong Excel?

Gần như luôn là do bảng mã. Excel trên Windows đọc CSV theo bảng mã ANSI trừ khi tệp bắt đầu bằng dấu UTF-8, nên chữ có dấu hiện ra lộn xộn. Tùy chọn "mở đúng trong Excel" thêm dấu đó vào: ba byte và xong.

Làm sao ngăn Excel xóa số 0 ở đầu?

Hãy chuyển sang .xlsx thay vì đưa cho Excel một tệp CSV. Trong CSV mọi giá trị chỉ là văn bản và Excel đoán nghĩa của nó; trong .xlsx kiểu của từng ô được ghi lại, nên mã bưu chính viết dạng văn bản vẫn là 01234. Công cụ này tìm những giá trị đó và ghim chúng thành văn bản trước khi Excel kịp ra tay.

Nó chuyển được mọi sheet trong workbook không?

Được, và mặc định là như vậy. Mỗi sheet thành một tệp CSV riêng và tất cả về cùng nhau trong một tệp ZIP. Chỉ chuyển sheet đầu là vứt bỏ phần còn lại mà không nói gì với bạn.

Sao lại có lựa chọn dấu chấm phẩy?

Vì Excel ở nhiều vùng châu Âu mong đợi như vậy: nơi dấu phẩy là dấu thập phân thì nó không thể đồng thời ngăn cách các trường. Nếu người nhận mở tệp dùng dấu phẩy mà thấy tất cả dồn vào một cột, lý do là đây.

Cảnh báo về các ô bắt đầu bằng dấu bằng nghĩa là gì?

Excel coi ô bắt đầu bằng =, +, - hoặc @ là công thức chứ không phải văn bản, nên một bảng tính dựng từ dữ liệu bạn không viết có thể chạy thứ gì đó khi mở. Các ô được đếm và hiển thị để bạn quyết định; chúng không bị sửa, vì thay đổi dữ liệu của bạn mà không hỏi thì còn tệ hơn.

Bảng tính của tôi có bị tải lên không?

Không. Nó được đọc, chuyển đổi và trả về ngay trong tab trình duyệt này bằng chính thiết bị của bạn. Bạn có thể theo dõi tab Network của trình duyệt trong lúc làm: không có gì mang theo tệp đi ra ngoài.

Công cụ liên quan

Tệp của bạn được xử lý trên thiết bị và không được tải lên. Bạn có thể kiểm chứng trong công cụ dành cho nhà phát triển của trình duyệt, ở thẻ Network.