Skip to content

Chuyển mã (Encoding)

Bốn lệnh Chuyển mã trong nhóm Văn bản và Số chuyển văn bản tiếng Việt qua lại giữa ba bảng mã: Unicode, VNITCVN3. Bảng mã nguồn của từng ô được tự nhận diện theo tên font, bạn chỉ cần chọn bảng mã đích.

Đây là việc gặp thường xuyên khi tiếp nhận hồ sơ cũ: dự toán, thuyết minh, biên bản lập từ thời dùng .VnTime hoặc VNI-Times, mở trên máy hiện nay hiện ra chuỗi lạ kiểu C«ng t¸c bª t«ng. Sau khi chuyển sang Unicode, dữ liệu tìm kiếm được, VLOOKUP khớp được và copy sang Word/PDF không vỡ chữ.

Các lệnh trong nhóm

LệnhChức năng
Chuyển mãMở cửa sổ Chuyển đổi Font: chọn bảng mã đích + phạm vi rộng hơn vùng chọn
Sang UnicodeChuyển vùng đang chọn sang Unicode, đặt font Times New Roman
Sang VNIChuyển vùng đang chọn sang VNI, đặt font VNI-Times
Sang TCVN3Chuyển vùng đang chọn sang TCVN3, đặt font .VnTime

Ba nút "Sang …" chạy ngay trên vùng đang bôi đen, không có hộp thoại. Nút Chuyển mã mở cửa sổ cho phép chọn phạm vi cả sheet hoặc cả workbook.

Cách addin nhận diện bảng mã nguồn

Addin đọc tên font hiện tại của ô:

  • Font bắt đầu bằng .Vn (.VnTime, .VnArial) → coi nội dung là TCVN3.
  • Font bắt đầu bằng VNI (VNI-Times, VNI-Helve) → coi nội dung là VNI.
  • Còn lại (Times New Roman, Arial, Calibri…) → coi nội dung là Unicode.

Nhờ vậy bạn không phải khai báo bảng mã gốc. Nhưng cũng vì vậy, nếu ai đó đã đổi font thủ công mà không chuyển mã — ví dụ ép cả bảng TCVN3 về Arial — thì addin sẽ hiểu nhầm và kết quả sai. Hãy kiểm tra vài ô mẫu trước khi chạy cả sheet.

Quy trình đưa một bộ hồ sơ cũ về Unicode

  1. Lưu một bản sao file gốc. Kết quả ghi đè trực tiếp lên ô và không hoàn tác được bằng Ctrl+Z.
  2. Kiểm tra font của vài ô bị lỗi chữ: nếu là .VnTime hoặc VNI-Times thì đúng là lỗi bảng mã, xử lý được bằng lệnh này.
  3. Vào tab DVD Addin → nhóm Văn bản và SốChuyển mã.
  4. Trong cửa sổ Chuyển đổi Font, chọn:
    • Encoding đíchUnicode (Times New Roman).
    • Phạm viVùng chọn, Sheet hiện tại hoặc Tất cả các sheet.
    • Giữ tick Bỏ qua ô có công thức để công thức tổng hợp không bị phá.
  5. Bấm Áp dụng. Cửa sổ không khoá Excel, nên chọn vùng khác rồi bấm Áp dụng tiếp; bấm Đóng khi xong.
  6. Với vùng nhỏ, nhanh hơn là bôi đen rồi bấm thẳng Sang Unicode. Thanh trạng thái hiện thông báo dạng Đã chuyển 128 ô sang Uni (font: Times New Roman) rồi tự tắt sau khoảng 8 giây.
  7. Rà lại bố cục: font đích được ép theo bảng mã (Times New Roman / VNI-Times / .VnTime) nên bề rộng chữ thay đổi, có thể phải chỉnh lại độ rộng cột và chiều cao dòng.

Chiều ngược lại cũng dùng đúng quy trình đó: khi phải nộp file theo mẫu cũ, chọn Encoding đíchTCVN3 (.VnTime) hoặc VNI (VNI-Times).

Ví dụ

Bảng khối lượng của một dự án cải tạo, cột "Nội dung công việc" gõ bằng TCVN3, font .VnTime. Bôi đen cột rồi bấm Sang Unicode:

Trước (font .VnTime)Sau (Unicode, Times New Roman)
C«ng t¸c bª t«ng lãt M100Công tác bê tông lót M100
Cèt thÐp dÇm sµn D<=10Cốt thép dầm sàn D<=10
X©y têng g¹ch èng dµy 200Xây tường gạch ống dày 200

Sau bước này mới lọc/nhóm theo tên công việc hoặc dò tìm sang bảng đơn giá được.

Nếu chủ đầu tư yêu cầu nộp lại theo mẫu VNI, bôi đen cùng cột rồi bấm Sang VNI: Bê tông móng đá 1x2 M250 trở thành Beâ toâng moùng ñaù 1x2 M250 — trông lạ trên màn hình nhưng hiển thị đúng khi dùng font VNI-Times.

Mẹo và lưu ý

  • Ô công thức luôn được bỏ qua ở ba nút "Sang …", và cửa sổ Chuyển mã bật sẵn tick Bỏ qua ô có công thức. Bỏ tick sẽ động vào cả ô công thức và dễ làm hỏng công thức.
  • Phạm vi Tất cả các sheet tác động lên toàn bộ workbook đang mở — kiểm tra kỹ trước khi bấm Áp dụng.
  • TCVN3 không có đủ chữ hoa có dấu; tiêu đề viết HOA toàn bộ thường phải chỉnh tay bằng font .VnTimeH sau khi chuyển.
  • Máy người nhận phải cài sẵn bộ font tương ứng (.VnTime cho TCVN3, VNI-Times cho VNI), nếu không họ vẫn thấy chữ lỗi.
  • Sau khi chuyển sang VNI hoặc TCVN3, các hàm dò tìm/so sánh với dữ liệu Unicode không còn khớp — hãy để bước đổi bảng mã ở cuối, khi đã tính toán xong.
  • Chưa chọn vùng nào thì addin báo "Vui lòng chọn vùng dữ liệu." và dừng.
  • Lỗi chữ kiểu Cống không phải lỗi bảng mã font mà là mojibake UTF-8; xử lý bằng mục Sửa lỗi font tiếng Việt trong Smart Data Cleaning….

Xem thêm

Released under DVDAddin License.