Hướng Dẫn Loại Bỏ Dấu Tiếng Việt Trong Excel Bằng VBA

Nội dung được viết bởi Cao Cường

Bài viết này sẽ hướng dẫn các bạn cách chuyển từ tiếng Việt có dấu thành tiếng Việt không dấu trực tiếp trong bảng tính excel và bạn không cần phải sử dụng thêm phần mềm của bên thứ 3.

Tại sao nên sử dụng VBA để loại bỏ dấu tiếng Việt trong Excel?

Thông thường để chuyển tiếng Việt có dấu thành tiếng Việt không dấu trong excel hay trong word chúng ta sẽ sử dụng phần mềm Unikey, nhưng mình nhận thấy một vài bạn khi thao tác với Unikey không chính xác thì sẽ nhận được kết quả không mong muốn, do vậy mình sẽ giới thiệu với các bạn một cách khác đó là sử dụng vba excel để loại bỏ dấu tiếng việt trong excel. VBA là gì thì trên Gitiho.com có nói nhiều rồi, các bạn tìm hiểu nhé, bắt đầu thôi nào.

Xem thêm: Khóa học VBA giúp bạn nâng cao hiệu suất và tự động hóa quy trình làm việc hiệu quả:

Mẹo: Nếu bạn sử dụng Unikey thì hãy tải Unikey từ trang chủ duy nhất do tác giả Phạm Kim Long giới thiệu đó là Unikey.org để hạn chế rủi ro có thể xảy ra như chương trình được đính kèm mã độc nhé.

Cách loại bỏ dấu tiếng Việt trong Excel bằng VBA

Giả sử mình có đoạn chữ tiếng Việt có dấu như bên dưới, bây giờ mình sẽ tiến hành loại bỏ dấu tiếng Việt trong excel luôn.

bo-dau-tieng-viet

Bước 1: Các bạn vào menu Developer\Visual Basic để gọi chương trình Microsoft Visual Basic For Applications - Sau đây mình sẽ gọi tắt là chương trình vba cho nhanh nhé.

Bạn nào không thấy menu nào có thể mở lên hoặc nhanh nhất là nhấn phím tắt trên excel là Alt + F11

Hướng Dẫn Loại Bỏ Dấu Tiếng Việt Trong Excel Bằng VBA

Bước 2: Trong cửa sổ chương trình vba các bạn chọn Insert\Module

Hướng Dẫn Loại Bỏ Dấu Tiếng Việt Trong Excel Bằng VBA

Bước 3: Copy đoạn code bên dưới dán vào khung soạn thảo (Đây là đoạn code mình sưu tầm, đã kiểm tra và chạy thử thành công).

Function 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

 

Bước 4: Tắt cửa sổ vba và quay trở lại file excel lúc nãy, ở ô B1 các bạn nhập công thức sau:

=ConvertToUnSign(A1)

Hướng Dẫn Loại Bỏ Dấu Tiếng Việt Trong Excel Bằng VBA

Kết quả tiếng Việt có dấu đã được chuyển thành tiếng Việt không dấu rồi nè

Hướng Dẫn Loại Bỏ Dấu Tiếng Việt Trong Excel Bằng VBA

Xem thêm: Hướng dẫn cách chạy file Macro, file VBA đuôi xlsm trong Excel

Tổng kết

Nếu bạn thấy bài viết hữu ích hãy vỗ tay, share dùm mình nhé, trên Gitiho.com có rất nhiều kiến thức bổ ích và nhiều khóa học Excel hay, bạn có thể tham khảo để nâng cao kiến thức, kỹ năng của bản thân nhé.

 

KHÓA HỌC EXCEL ONLINE HOÀN TOÀN MIỄN PHÍ

Khóa học với hơn 14000 HỌC VIÊN đang học và đánh giá trung bình 4.76 SAO

5/5 - (1 bình chọn)

5/5 - (1 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông