Chuyển mã (Encoding)
Chuyển đổi text tiếng Việt giữa Unicode, TCVN3 (.VnTime) và VNI (VNI-Times) — tự nhận biết bảng mã nguồn của từng ô theo font, chuyển nội dung và đặt lại font đúng với bảng mã đích.
Ứng dụng: mở file Excel cũ dùng TCVN3 / VNI mà chữ hiển thị thành ký tự lạ → chọn vùng và chuyển về Unicode để dùng được trên Office hiện đại.
Mở lệnh
DVD Addin → nhóm Văn bản và Số → split-button Chuyển mã.
Dropdown có đúng 3 mục:
| Lệnh | Ý nghĩa |
|---|---|
| Sang Unicode | Chuyển vùng chọn sang Unicode, đặt font Times New Roman |
| Sang VNI | Chuyển vùng chọn sang VNI, đặt font VNI-Times |
| Sang TCVN3 | Chuyển vùng chọn sang TCVN3, đặt font .VnTime |
Mỗi lệnh chạy trên vùng đang chọn. Với mỗi ô, addin tự nhận biết bảng mã nguồn theo font rồi chuyển sang bảng mã đích và đặt lại font tương ứng. Ô chứa công thức được bỏ qua.
Cách nhận biết bảng mã (theo font)
Addin xác định bảng mã nguồn của ô dựa trên tên font (3 ký tự đầu):
- Font bắt đầu bằng
.VN(vd.VnTime,.VnArial) → TCVN3. - Font bắt đầu bằng
VNI(vdVNI-Times,VNI-Helve) → VNI. - Còn lại (Times New Roman, Arial, Calibri…) → Unicode.
Nhờ vậy bạn không cần khai báo bảng mã gốc — chỉ cần ô đang dùng đúng font của bảng mã đó, addin sẽ tự suy ra.
Các bảng mã tiếng Việt
Unicode
Bảng mã chuẩn quốc tế, được Windows / Office / web hỗ trợ native. Mỗi ký tự tiếng Việt là 1 codepoint.
Ví dụ: à = U+00E0, ấ = U+1EA5.
Mọi file mới nên dùng Unicode. Đây là mặc định của Excel hiện đại. Khi chuyển Sang Unicode, addin đặt font Times New Roman.
TCVN3 (.VnTime)
Bảng mã 8-bit phát triển trước Unicode. Mỗi ký tự tiếng Việt nằm trong vùng byte cao (0x80–0xFE).
Font kèm (dấu chấm đầu — chú ý): .VnTime, .VnArial, .VnTimeH, .VnArialH.
Nếu mở file TCVN3 mà KHÔNG đúng font → chữ hiện ngẫu nhiên: "haø noäi", "h¶ noíi". Khi chuyển Sang TCVN3, addin đặt font .VnTime.
VNI (VNI-Times)
Bảng mã của hãng Vietnam International Inc. Dùng 1–2 byte cho mỗi ký tự (đa số ký tự có dấu dùng 2 byte, vd "a^" → â).
Font kèm: VNI-Times, VNI-Arial, VNI-Helve.
TCVN3 và VNI KHÔNG tương thích chéo dù cùng là font 8-bit. Khi chuyển Sang VNI, addin đặt font VNI-Times.
Dialog "Chuyển đổi Font chữ" (có thêm phạm vi)
Ngoài split-button trên ribbon, cửa sổ công cụ Văn bản và Số còn có tab Chuyển đổi Font chữ — phiên bản có chọn phạm vi rộng hơn vùng chọn.
| Mục | Lựa chọn |
|---|---|
| Encoding đích | Unicode (Times New Roman) / VNI (VNI-Times) / TCVN3 (.VnTime) |
| Phạm vi | Vùng chọn / Sheet hiện tại / Tất cả các sheet |
| Tùy chọn | checkbox Bỏ qua ô có công thức (mặc định bật) |
| Nút | Đóng / Áp dụng |
Bước 1 — Chọn Encoding đích
Chọn 1 trong 3: Unicode / VNI / TCVN3. Bảng mã nguồn của từng ô vẫn được tự nhận biết theo font như mô tả ở trên.
Bước 2 — Chọn Phạm vi
- Vùng chọn — chỉ xử lý vùng đang bôi đen. Dialog ở chế độ modeless, nên bạn có thể đổi vùng chọn giữa các lần bấm Áp dụng.
- Sheet hiện tại — xử lý toàn bộ vùng đã dùng (UsedRange) của sheet đang mở.
- Tất cả các sheet — xử lý UsedRange của mọi sheet đang hiển thị trong workbook.
Bước 3 — Tùy chọn công thức
Bật Bỏ qua ô có công thức (mặc định) để không đụng vào ô chứa công thức. Nếu tắt, ô công thức cũng được chuyển trên giá trị kết quả của nó.
Bước 4 — Áp dụng
Bấm Áp dụng để chạy. Sau khi xong, thanh trạng thái báo số ô đã chuyển. Bấm Đóng để đóng tab.
Cập nhật 2.8.0
Sửa lỗi nghiêm trọng: trước đây chạy chuyển mã trên vùng nhiều ô (nhất là chọn nguyên một cột) có thể bị xóa trắng nội dung. Từ 2.8.0, chuyển mã chạy đúng trên cả vùng/cột nhiều ô, giữ nguyên ô công thức và chỉ đổi các ô chứa văn bản.
Khắc phục sự cố
Chữ vẫn lạ sau khi chuyển
- Kiểm tra ô đang dùng đúng font của bảng mã gốc. Addin nhận biết bảng mã nguồn qua font; nếu chữ là TCVN3 nhưng font lại là Times New Roman, addin sẽ tưởng là Unicode và không chuyển đúng.
- Đặt lại đúng font (
.VnTimecho TCVN3,VNI-Timescho VNI) rồi chạy lại lệnh chuyển.
Ô công thức không đổi
- Đây là chủ đích: ô công thức bị bỏ qua (và checkbox Bỏ qua ô có công thức bật mặc định). Tắt checkbox trong dialog nếu thực sự muốn chuyển trên giá trị kết quả.
License gating
Lệnh Chuyển mã hoàn toàn miễn phí — không cần license.
Liên quan
- Đổi chữ (Smart Case) — đổi hoa/thường sau khi đã về Unicode.
- Nhập liệu nhanh — các công cụ khác trong nhóm Văn bản và Số.