Hướng dẫn cách chuyển chữ có dấu thành không dấu trong Excel

Bài viết dưới đây sẽ hướng dẫn cho bạn cách chuyển chữ có dấu thành không dấu trong Excel, cùng theo dõi nhé!

Loại bỏ dấu tiếng việt trong Excel bằng công cụ Unikey

Cách làm này khá phổ biến và được sử dụng rộng rãi trong Excel, bạn chỉ cần cài đặt bộ gõ Unikey miễn phí là có thể dùng được rồi. Các bước thực hiện như sau:

Bước 1: Tiến hành kiểm tra font chữ mà bạn đang dùng trong Excel

Font chữ sẽ giúp bạn xác định được bảng mã sẽ dùng trong bộ chuyển đổi của Unikey. Bên dưới là một số loại font phổ biến thường được dùng ở Việt Nam:

  • Font Arial, Times New Roman… của bảng mã Unicode
  • Font .VnTimes, .VnTimesH… (bắt đầu với chữ .Vn) của bảng mã TCVN3
  • Font VNI-Times… (bắt đầu với chữ VNI) của bảng mã VNI Windows

Ví dụ sau:

Đoạn nội dung nằm trong vùng A2:A4 có font là Times New Roman, của bảng mã Unicode.

Bước 2: Thực hiện copy nội dung cần loại bỏ dấu.

Chú ý: bạn cần phải đảm bảo nội dung trong ô sẽ được hiển thị đầy đủ nội dung. Nếu hiển thị không đầy đủ sẽ dẫn đến kết quả chuyển đổi không chính xác

Thao tác copy thực hiện như sau:

  • Bôi đen vùng ô cần copy
  • Sau đó bấm phím tắt để copy: Ctrl + C

Bước 3: Loại bỏ dấu trong bảng chuyển đổi Unikey

Mở bảng chuyển đổi Unikey:

Bạn tiến hành mở Unikey lên, rồi nhấp chuột phải vào biểu tượng Unikey nằm ở góc bên phải (phía dưới) màn hình máy tính, rồi chọn Công cụ…:

Thực hiện thao tác loại bỏ dấu

Tại bảng chuyển đổi, bạn tiến hành những bước sau:

  1. Kiểm tra xem đúng bảng mã Nguồn và mã Đich giống nhau, có cùng là bảng mã của font chữ mà bạn đang dùng
  2. Nhấn vào Lựa chọn là Loại bỏ dấu
  3. Nhấn vào nút Chuyển mã, lúc này sẽ xuất hiện thông báo thành công như sau:

4. Nhấn Đóng để thực hiện đóng bảng chuyển đổi lại (nếu muốn, không bắt buộc)

Xem thêm: Hướng dẫn cách hiện Ruler trong Word

Bước 4: Dán kết quả vừa thu được ở bước 3 vào vị trí cần lấy kết quả

Ở vị trí muốn lấy kết quả (ví dụ ô B2), bạn thực hiện nhấn lệnh dán (Phím tắt Ctrl + V)

Kết quả thu được lúc này sẽ như sau:

Lưu ý:

  • Việc dán kết quả sẽ cần có 2 cột, trong đó 1 cột chứa nội dung và 1 cột để trống
  • Bạn cần đảm bảo rằng luôn có 2 cột trống để lấy kết quả, việc này giúp tránh việc làm mất nội dung ở cột khác.

Loại bỏ dấu tiếng việt bằng hàm tự tạo trong VBA Excel

Nếu như bạn cảm thấy cách làm trên khá phức tạp với nhiều công đoạn, và bạn muốn có 1 hàm trong Excel có thể giúp loại bỏ dấu tiếng việt nhanh chóng thì đừng quên sử dụng tới hàm tự tạo trong VBA, vì bản thân Excel sẽ không có sẵn hàm này.

Cách làm thực hiện như sau:

Bước 1: Đầu tiên, bạn tiến hành tạo 1 Module, rồi dán đoạn code dưới đây vào trong Module đó:

Hướng dẫn: Nhấn vào nút View Raw nằm ở góc dưới khung Code => Lúc này, sẽ mở ra cửa sổ giúp bạn copy đoạn code => Tiến hành copy và dán vào Module

 

Function bo_dau_tieng_viet(Text As String) As String
Dim AsciiDict As Object
Set AsciiDict = CreateObject(“scripting.dictionary”)
AsciiDict(192) = “A”
AsciiDict(193) = “A”
AsciiDict(194) = “A”
AsciiDict(195) = “A”
AsciiDict(196) = “A”
AsciiDict(197) = “A”
AsciiDict(199) = “C”
AsciiDict(200) = “E”
AsciiDict(201) = “E”
AsciiDict(202) = “E”
AsciiDict(203) = “E”
AsciiDict(204) = “I”
AsciiDict(205) = “I”
AsciiDict(206) = “I”
AsciiDict(207) = “I”
AsciiDict(208) = “D”
AsciiDict(209) = “N”
AsciiDict(210) = “O”
AsciiDict(211) = “O”
AsciiDict(212) = “O”
AsciiDict(213) = “O”
AsciiDict(214) = “O”
AsciiDict(217) = “U”
AsciiDict(218) = “U”
AsciiDict(219) = “U”
AsciiDict(220) = “U”
AsciiDict(221) = “Y”
AsciiDict(224) = “a”
AsciiDict(225) = “a”
AsciiDict(226) = “a”
AsciiDict(227) = “a”
AsciiDict(228) = “a”
AsciiDict(229) = “a”
AsciiDict(231) = “c”
AsciiDict(232) = “e”
AsciiDict(233) = “e”
AsciiDict(234) = “e”
AsciiDict(235) = “e”
AsciiDict(236) = “i”
AsciiDict(237) = “i”
AsciiDict(238) = “i”
AsciiDict(239) = “i”
AsciiDict(240) = “d”
AsciiDict(241) = “n”
AsciiDict(242) = “o”
AsciiDict(243) = “o”
AsciiDict(244) = “o”
AsciiDict(245) = “o”
AsciiDict(246) = “o”
AsciiDict(249) = “u”
AsciiDict(250) = “u”
AsciiDict(251) = “u”
AsciiDict(252) = “u”
AsciiDict(253) = “y”
AsciiDict(255) = “y”
AsciiDict(352) = “S”
AsciiDict(353) = “s”
AsciiDict(376) = “Y”
AsciiDict(381) = “Z”
AsciiDict(382) = “z”
AsciiDict(258) = “A”
AsciiDict(259) = “a”
AsciiDict(272) = “D”
AsciiDict(273) = “d”
AsciiDict(296) = “I”
AsciiDict(297) = “i”
AsciiDict(360) = “U”
AsciiDict(361) = “u”
AsciiDict(416) = “O”
AsciiDict(417) = “o”
AsciiDict(431) = “U”
AsciiDict(432) = “u”
AsciiDict(7840) = “A”
AsciiDict(7841) = “a”
AsciiDict(7842) = “A”
AsciiDict(7843) = “a”
AsciiDict(7844) = “A”
AsciiDict(7845) = “a”
AsciiDict(7846) = “A”
AsciiDict(7847) = “a”
AsciiDict(7848) = “A”
AsciiDict(7849) = “a”
AsciiDict(7850) = “A”
AsciiDict(7851) = “a”
AsciiDict(7852) = “A”
AsciiDict(7853) = “a”
AsciiDict(7854) = “A”
AsciiDict(7855) = “a”
AsciiDict(7856) = “A”
AsciiDict(7857) = “a”
AsciiDict(7858) = “A”
AsciiDict(7859) = “a”
AsciiDict(7860) = “A”
AsciiDict(7861) = “a”
AsciiDict(7862) = “A”
AsciiDict(7863) = “a”
AsciiDict(7864) = “E”
AsciiDict(7865) = “e”
AsciiDict(7866) = “E”
AsciiDict(7867) = “e”
AsciiDict(7868) = “E”
AsciiDict(7869) = “e”
AsciiDict(7870) = “E”
AsciiDict(7871) = “e”
AsciiDict(7872) = “E”
AsciiDict(7873) = “e”
AsciiDict(7874) = “E”
AsciiDict(7875) = “e”
AsciiDict(7876) = “E”
AsciiDict(7877) = “e”
AsciiDict(7878) = “E”
AsciiDict(7879) = “e”
AsciiDict(7880) = “I”
AsciiDict(7881) = “i”
AsciiDict(7882) = “I”
AsciiDict(7883) = “i”
AsciiDict(7884) = “O”
AsciiDict(7885) = “o”
AsciiDict(7886) = “O”
AsciiDict(7887) = “o”
AsciiDict(7888) = “O”
AsciiDict(7889) = “o”
AsciiDict(7890) = “O”
AsciiDict(7891) = “o”
AsciiDict(7892) = “O”
AsciiDict(7893) = “o”
AsciiDict(7894) = “O”
AsciiDict(7895) = “o”
AsciiDict(7896) = “O”
AsciiDict(7897) = “o”
AsciiDict(7898) = “O”
AsciiDict(7899) = “o”
AsciiDict(7900) = “O”
AsciiDict(7901) = “o”
AsciiDict(7902) = “O”
AsciiDict(7903) = “o”
AsciiDict(7904) = “O”
AsciiDict(7905) = “o”
AsciiDict(7906) = “O”
AsciiDict(7907) = “o”
AsciiDict(7908) = “U”
AsciiDict(7909) = “u”
AsciiDict(7910) = “U”
AsciiDict(7911) = “u”
AsciiDict(7912) = “U”
AsciiDict(7913) = “u”
AsciiDict(7914) = “U”
AsciiDict(7915) = “u”
AsciiDict(7916) = “U”
AsciiDict(7917) = “u”
AsciiDict(7918) = “U”
AsciiDict(7919) = “u”
AsciiDict(7920) = “U”
AsciiDict(7921) = “u”
AsciiDict(7922) = “Y”
AsciiDict(7923) = “y”
AsciiDict(7924) = “Y”
AsciiDict(7925) = “y”
AsciiDict(7926) = “Y”
AsciiDict(7927) = “y”
AsciiDict(7928) = “Y”
AsciiDict(7929) = “y”
AsciiDict(8363) = “d”
Text = Trim(Text)
If Text = “” Then Exit Function
Dim Char As String, _
NormalizedText As String, _
UnicodeCharCode As Long, _
i As Long
‘Remove accent marks (diacritics) from text
For i = 1 To Len(Text)
Char = Mid(Text, i, 1)
UnicodeCharCode = AscW(Char)
If (UnicodeCharCode < 0) Then
‘See http://support.microsoft.com/kb/272138
UnicodeCharCode = 65536 + UnicodeCharCode
End If
If AsciiDict.Exists(UnicodeCharCode) Then
NormalizedText = NormalizedText & AsciiDict.Item(UnicodeCharCode)
Else
NormalizedText = NormalizedText & Char
End If
Next
bo_dau_tieng_viet = NormalizedText
End Function

Bước 2: Thực hiện đóng cửa sổ VBA lại và sau đó trở về màn hình làm việc Excel. Vậy là bạn đã có thể dùng hàm bo_dau_tieng_viet được rồi.

Lưu ý:

Khi thực hiện copy/paste hàm tự tạo trên tại file nào (Workbook nào) thì bạn chỉ dùng được trong file đó. Đối với file khác không có Code thì sẽ không dùng được. Khi thực hiện lưu file có dùng VBA, bạn cần lưu dưới dạng file Enable-macro Workbook (.xlsm) nhé!

Xem thêm: Cách dùng hàm đếm các giá trị giống nhau trong Excel

Tin tức liên quan

Gửi bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *