Chuyển đổi CSV sang Excel: giữ nguyên dữ liệu, không tự động định dạng
Công cụ này nhận một tệp CSV – văn bản thuần với các giá trị được phân cách bằng dấu phẩy, dấu chấm phẩy hoặc tab – và chuyển nó thành một tệp Excel (XLSX). Toàn bộ các hàng và cột từ CSV được giữ nguyên trong worksheet đầu tiên của tệp mới, và bạn có thể xem trước kết quả trước khi tải xuống. Điểm cốt lõi làm nên sự khác biệt của trang này nằm ở bốn điều: CSV không có kiểu dữ liệu, mọi trường đều đến dưới dạng văn bản; CSV không thể mang nhiều sheet, công thức hay định dạng ô; dấu phân cách do người dùng chọn vì tệp nguồn không khai báo nó; và bộ chuyển đổi đọc toàn bộ tệp như một bảng phẳng duy nhất, dễ gặp lỗi phân tích nếu có dòng nhúng, dấu phẩy nhúng hoặc trường không được đóng ngoặc.
Định dạng CSV và những cạm bẫy thường gặp
CSV (Comma-Separated Values) thực chất là văn bản thuần với các giá trị được phân cách bằng một ký tự – thường là dấu phẩy, nhưng cũng có thể là dấu chấm phẩy hoặc tab. Không có tiêu chuẩn duy nhất cho CSV; các ứng dụng xuất tệp này thường dùng quy tắc riêng. Khi bạn mở một tệp CSV bằng trình soạn thảo văn bản, bạn thấy các dòng, mỗi dòng là một hàng, và các giá trị nằm giữa các dấu phân cách.
Vấn đề phát sinh khi chính giá trị chứa ký tự phân cách hoặc xuống dòng. Ví dụ: một trường địa chỉ có dấu phẩy bên trong ( “123 Đường ABC, Phường XYZ” ) cần được đặt trong dấu ngoặc kép. Nếu không, bộ phân tích sẽ hiểu dấu phẩy đó là dấu phân cách cột, dẫn đến sai lệch cấu trúc. Tương tự, một mô tả có ngắt dòng sẽ làm gãy hàng nếu không được bao bọc đúng cách. Công cụ này dựa vào người dùng chọn đúng dấu phân cách (Comma, Semicolon, Tab) trước khi chuyển đổi, bởi tệp CSV không tự khai báo nó. Nếu chọn sai, bạn sẽ gặp thông báo lỗi This CSV could not be parsed. – tệp không thể phân tích cú pháp.
Bảng dưới đây liệt kê các ký tự phân cách phổ biến và ngữ cảnh thường gặp:
| Ký tự phân cách | Tên thường gọi | Ứng dụng phổ biến |
|---|---|---|
| , (dấu phẩy) | Comma | Xuất từ Excel, Google Sheets, cơ sở dữ liệu (vùng địa lý dùng dấu chấm thập phân) |
| ; (dấu chấm phẩy) | Semicolon | Excel vùng địa lý (châu Âu) nơi dấu phẩy là dấu thập phân |
| \t (tab) | Tab | Xuất từ cơ sở dữ liệu, hệ thống kế thừa |
Một cạm bẫy khác là dữ liệu có dấu nháy kép nhúng. Quy tắc: nếu giá trị chứa dấu nháy kép, nó phải được viết hoa kép (ví dụ: “”Kích thước”” đại diện cho một ô có nội dung “Kích thước”). Công cụ tuân theo quy tắc này, nhưng nếu tệp CSV vi phạm, lỗi phân tích sẽ xảy ra.
Ánh xạ kiểu dữ liệu: tất cả đều là văn bản trong XLSX
Khi bạn mở tệp CSV bằng Excel theo cách thông thường, Excel thường cố gắng đoán kiểu dữ liệu: số trở thành số, ngày tháng trở thành ngày tháng, và – nguy hiểm nhất – số có số 0 ở đầu như mã bưu điện 00123 bị mất hai số 0 đầu thành 123. Công cụ này không làm điều đó. Mỗi trường từ CSV được lưu dưới dạng văn bản trong tệp XLSX. Điều này có nghĩa là:
- Số nguyên và số thập phân xuất hiện dưới dạng chuỗi ký tự. Bạn cần bôi đen cột và đặt định dạng ô thành “Số” hoặc “Tiền tệ” sau khi tải xuống.
- Ngày tháng dưới dạng “2024-03-15” hoặc “15/03/2024” vẫn là văn bản. Không có phép tính ngày tháng nào hoạt động cho đến khi bạn chuyển chúng thành kiểu ngày tháng thực sự trong Excel (dùng Data > Text to Columns hoặc DATEVALUE).
- Số 0 đầu: được giữ nguyên – đây là lợi ích lớn nhất. Mã bưu điện, mã sản phẩm, số tài khoản… tất cả ở dạng văn bản, không bị cắt xén.
- Số rất dài: số thẻ tín dụng hoặc mã vạch dài hơn 15 chữ số thường bị Excel biểu diễn dưới dạng ký hiệu khoa học. Vì chúng là văn bản trong XLSX của công cụ này, độ chính xác được bảo toàn.
Sau khi chuyển đổi, nếu bạn thực sự cần Excel xử lý chúng như số, hãy chuyển cột sang định dạng số với các bước: Chọn cột → Data → Text to Columns → Finish (hoặc dùng Paste Special > Multiply với 1). Nhưng hãy nhớ: việc đó sẽ loại bỏ số 0 đầu, vì vậy hãy sao lưu cột văn bản gốc nếu cần.
Xử lý phía máy khách: không tải lên máy chủ
Một điểm khác biệt quan trọng: toàn bộ quá trình chuyển đổi diễn ra trong trình duyệt của bạn. Trình duyệt của bạn phân tích cú pháp tệp và ghi đầu ra đã chuyển đổi cục bộ trên thiết bị của bạn. Không có dữ liệu nào được tải lên máy chủ. Điều này mang lại hai lợi ích:
- Quyền riêng tư: dữ liệu nhạy cảm (danh sách khách hàng, báo cáo tài chính, mã nguồn…) không bao giờ bị gửi lên máy chủ. Không có rủi ro lưu trữ đám mây hay rò rỉ.
- Tốc độ: chuyển đổi ngay lập tức, không phụ thuộc vào băng thông (ngoại trừ việc tải tệp vào). Tuy nhiên, tệp quá lớn có thể gây ra cảnh báo “This conversion is taking too long. Try a smaller file.”
Phương pháp hoạt động: Dữ liệu được đọc dưới dạng mảng hai chiều, sau đó ghi vào worksheet duy nhất. Định dạng XLSX thực chất là một kho lưu trữ ZIP chứa các tệp XML, nhưng bạn không cần quan tâm điều đó – chỉ biết rằng không có server nào can thiệp.
Giới hạn và xử lý lỗi
Bộ chuyển đổi có các ràng buộc cụ thể, được phản ánh qua các thông báo lỗi. Dưới đây là danh sách đầy đủ:
| Thông báo lỗi | Nguyên nhân và cách khắc phục |
|---|---|
| “Choose a CSV, JSON or XLSX file.” | Tệp có phần mở rộng không được hỗ trợ – chỉ chấp nhận CSV, JSON hoặc XLSX đầu vào. |
| “This file is too large. Use a file under ‹max›.” | Vượt quá giới hạn kích thước tối đa là 8 MB. |
| “Choose a different output format.” | Định dạng đầu ra không hợp lệ – trang này chỉ chuyển đổi theo một hướng cố định. |
| “Could not convert this file.” | Lỗi chung – tệp có thể bị hỏng hoặc không đúng cấu trúc. |
| “This CSV could not be parsed.” | Dấu phân cách chọn sai, dòng nhúng không đóng ngoặc, ký tự đặc biệt không được xử lý. Hãy kiểm tra tệp bằng trình soạn thảo văn bản. |
| “This file has no table rows.” | Tệp trống hoặc chỉ có tiêu đề mà không có dòng dữ liệu. |
| “This table has more than ‹max› rows.” | Vượt quá số hàng tối đa là 10.000 hàng. |
| “This table has more than ‹max› columns.” | Vượt quá số cột tối đa là 200 cột. |
| “Conversion cancelled.” | Người dùng hủy hoặc thoát trang giữa chừng. |
| “This conversion is taking too long. Try a smaller file.” | Tệp quá lớn hoặc trình duyệt yếu; quá trình chuyển đổi mất hơn khoảng 12 giây. |
Lưu ý: tệp CSV chỉ có một sheet duy nhất, vì vậy đầu ra XLSX cũng chỉ có một worksheet tên là Sheet1. Công cụ không thêm bất kỳ định dạng, công thức hay kiểu dữ liệu nào – đó là bản chất của CSV.
Ai cần công cụ này và dùng như thế nào
Những người thường xuyên cần chuyển CSV sang Excel thường thuộc các nhóm sau:
- Nhân viên phân tích dữ liệu: nhận báo cáo CSV từ hệ thống kế thừa và cần mở trong Excel để áp dụng bộ lọc, pivot table, hoặc biểu đồ. Với công cụ này, họ có dữ liệu thô, không bị tự động chuyển đổi kiểu sai.
- Người làm hành chính: danh sách email, thông tin khách hàng, mã đơn hàng – giữ nguyên số 0 đầu là ưu tiên hàng đầu.
- Người quan tâm đến quyền riêng tư: không muốn tải tệp nhạy cảm lên máy chủ bên thứ ba. Công cụ client-side là giải pháp an toàn.
- Người dùng Excel mới: đơn giản chỉ muốn mở tệp CSV mà không cần cài đặt phần mềm phụ; chỉ cần trình duyệt.
Cách sử dụng: chọn tệp CSV, chọn dấu phân cách (thử dấu phẩy trước, nếu lỗi thì thử chấm phẩy hoặc tab), nhấn chuyển đổi. Xem trước bảng, kiểm tra số hàng và cột, tải xuống. Nếu bảng hiển thị sai, hãy quay lại chọn dấu phân cách khác. Không có bước nào yêu cầu tài khoản hay đăng ký.
Câu hỏi thường gặp (FAQ)
Hỏi: Tôi có tệp CSV với số 0 đầu – công cụ có giữ chúng không?
Đáp: Có. Vì CSV không có hệ thống kiểu dữ liệu, mọi giá trị đều được coi là văn bản. Công cụ này giữ nguyên các số 0 đầu vì nó không chuyển đổi giá trị thành số.
Hỏi: Tại sao ngày tháng của tôi hiển thị dưới dạng văn bản, không phải ngày tháng?
Đáp: Vì CSV không phân biệt kiểu dữ liệu – mọi thứ là văn bản. Công cụ giữ nguyên như vậy. Bạn có thể dùng Data > Text to Columns trong Excel để chuyển cột văn bản thành ngày tháng thực sự, chọn định dạng ngày tháng phù hợp.
Hỏi: Công cụ có thể chuyển CSV sang nhiều sheet Excel không?
Đáp: Không. CSV chỉ chứa một bảng phẳng, do đó tệp XLSX đầu ra chỉ có một worksheet duy nhất được đặt tên là Sheet1. Nếu cần nhiều sheet, bạn phải dùng Excel để sao chép dữ liệu sang các sheet khác.
Hỏi: Tệp CSV của tôi có dấu chấm phẩy nhưng tôi chọn dấu phẩy – có sao không?
Đáp: Có. Bạn sẽ nhận được lỗi This CSV could not be parsed. hoặc dữ liệu hiển thị sai (tất cả nằm trong một cột). Hãy thử chọn lại dấu phân cách đúng. Mở tệp CSV bằng Notepad để xem ký tự giữa các giá trị.
Hỏi: Có giới hạn kích thước tệp không?
Đáp: Có. Tệp tối đa 8 MB, tối đa 10.000 hàng và 200 cột. Nếu tệp quá lớn, bạn sẽ thấy thông báo This file is too large. Use a file under ‹max›. hoặc This conversion is taking too long. Try a smaller file.. Bạn nên chia tệp thành nhiều phần nhỏ hơn trước khi chuyển đổi.
Hỏi: Dữ liệu của tôi có được lưu ở đâu không?
Đáp: Không. Toàn bộ quá trình diễn ra trong trình duyệt của bạn. Trình duyệt phân tích cú pháp tệp và ghi đầu ra đã chuyển đổi cục bộ trên thiết bị của bạn. Không có dữ liệu nào được gửi lên máy chủ. Sau khi tải xuống, tệp XLSX nằm trên máy bạn; không có bản sao nào tồn tại trên trang web.