Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách chi tiết để xóa dấu tiếng Việt trong Excel.
Có hai phương pháp chuyển đổi chữ có dấu thành không dấu như sau:
- Phương pháp 1: Sử dụng công cụ Unikey một cách đơn giản nhất.
- Phương pháp 2: Tận dụng VBA để tạo hàm chuyển đổi tự động.
Phương pháp 1: Dùng Unikey chuyển đổi chữ tiếng Việt có dấu sang không dấu.
Ví dụ: Chúng ta muốn chuyển cột họ tên từ có dấu sang không dấu.
Kiểm tra bảng mã của dữ liệu nguồn. Trong ví dụ này, cột họ tên sử dụng font chữ Time New Roman -> thuộc bảng mã Unicode.
Bước 1: Sao chép toàn bộ dữ liệu muốn chuyển thành không dấu.
Bước 2: Chuột phải vào biểu tượng Unikey góc phải dưới màn hình -> Chọn Công cụ…[CS + F6] hoặc nhấn tổ hợp phím Ctrl + Shift + F6.
Bước 3: Hộp thoại xuất hiện trong Bảng mã
Bước 4: Sau khi chọn Chuyển mã, hộp thoại thông báo chuyển mã thành công sẽ xuất hiện, nhấn OK để kết thúc.
Nếu dữ liệu không phù hợp, hộp thoại sẽ hiện lên. Bạn chỉ cần nhấn OK để chọn lại nguồn dữ liệu.
Quay lại bảng tính Excel, chọn vị trí cần dán dữ liệu và nhấn tổ hợp phím Ctrl + V -> Kết quả sẽ hiển thị toàn bộ chữ không dấu.
Đây là cách đơn giản để loại bỏ dấu tiếng Việt. Lưu ý rằng phiên bản thấp của Unikey có thể không hỗ trợ phương pháp này.
Phương pháp thứ 2: Sử dụng ngôn ngữ lập trình VBA.
Điều 1: Nhấn tổ hợp phím Alt + F11 để khám phá cửa sổ VBA.
Điều 2: Vào thẻ Chèn -> Bảng điều khiển.
Điều 3: Sao chép đoạn mã dưới đây vào Bảng điều khiển.
Hàm ConvertToUnSign(ByVal sContent As String) As String Dim i As Long Dim intCode As Long Dim sChar As String Dim sConvert As String ConvertToUnSign = AscW(sContent) For i = 1 To Len(sContent) sChar = Mid(sContent, i, 1) If sChar <> '' Then intCode = AscW(sChar) End If Select Case intCode Case 273 sConvert = sConvert & 'd' Case 272 sConvert = sConvert & 'D' Case 224, 225, 226, 227, 259, 7841, 7843, 7845, 7847, 7849, 7851, 7853, 7855, 7857, 7859, 7861, 7863 sConvert = sConvert & 'a' Case 192, 193, 194, 195, 258, 7840, 7842, 7844, 7846, 7848, 7850, 7852, 7854, 7856, 7858, 7860, 7862 sConvert = sConvert & 'A' Case 232, 233, 234, 7865, 7867, 7869, 7871, 7873, 7875, 7877, 7879 sConvert = sConvert & 'e' Case 200, 201, 202, 7864, 7866, 7868, 7870, 7872, 7874, 7876, 7878 sConvert = sConvert & 'E' Case 236, 237, 297, 7881, 7883 sConvert = sConvert & 'i' Case 204, 205, 296, 7880, 7882 sConvert = sConvert & 'I' Case 242, 243, 244, 245, 417, 7885, 7887, 7889, 7891, 7893, 7895, 7897, 7899, 7901, 7903, 7905, 7907 sConvert = sConvert & 'o' Case 210, 211, 212, 213, 416, 7884, 7886, 7888, 7890, 7892, 7894, 7896, 7898, 7900, 7902, 7904, 7906 sConvert = sConvert & 'O' Case 249, 250, 361, 432, 7909, 7911, 7913, 7915, 7917, 7919, 7921 sConvert = sConvert & 'u' Case 217, 218, 360, 431, 7908, 7910, 7912, 7914, 7916, 7918, 7920 sConvert = sConvert & 'U' Case 253, 7923, 7925, 7927, 7929 sConvert = sConvert & 'y' Case 221, 7922, 7924, 7926, 7928 sConvert = sConvert & 'Y' Case Else sConvert = sConvert & sChar End Select Next ConvertToUnSign = sConvert End Function
Điều 4: Quay lại file Excel, mở Tệp -> Tùy chọn.
Điều 5: Hộp thoại hiện ra, chọn mục Trung tâm tin cậy -> Cài đặt Trung tâm tin cậy.
Điều 6: Trong phần Cài đặt Macro, chọn Bật tất cả các Macro (không khuyến nghị; mã có thể nguy hiểm), phần Cài đặt Macro cho Nhà phát triển tích chọn mục Tin cậy truy cập vào mô hình dự án VBA.
Điều 7: Bạn đã hoàn tất xây dựng hàm ConvertToUnSign(). Quay lại bảng tính, ví dụ muốn chuyển đổi dữ liệu ô D6 sang không dấu, nhập công thức sau: =ConvertToUnSign(D6).
Điều 8: Nhấn Enter -> dữ liệu đã chuyển sang không dấu: Tuy nhiên, việc xây dựng hàm này mất nhiều thời gian và không hiệu quả khi muốn xử lý lượng dữ liệu lớn.
Dưới đây là những cách cơ bản giúp bạn loại bỏ dấu tiếng Việt trong Excel.
Chúc các bạn thành công!