Cao Cường
Cao Cường
Thảo luận 0 thảo luận
Vỗ tay 2 vỗ tay
Lượt xem 345 lượt xem

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

Apr 26 2022

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: Hướng dẫn từng bước cách viết Macro trong VBA Excel

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

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

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

Tuyệt đỉnh VBA - Viết code trong tầm tay

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)

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è

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 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é.

 

Cùng tham gia cộng đồng hỏi đáp về chủ đề Tin học văn phòng

Thảo luận 0 câu trả lời
Lượt xem 345 lượt xem
Vỗ tay 2 vỗ tay

0 Bình 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