Bảng mã vni-windows hỗ trợ font chữ nào

Nội dung bài viết này sẽ hướng dẫn các bạn cách chuyển từ font chữ của bảng mã VNI Windows sang font chữ của bảng mã Unicode trực tiếp trong excel bằng vba excel, bạn không cần phải dùng thêm phần mềm của bên thứ ba như Unikey… để thực hiện việc chuyển đổi.

Chuyển font chữ của TCVN3 sang font chữ của Unicode trực tiếp trên excel

Gợi ý khóa học dành riêng cho bạn

Gợi ý khóa học dành riêng cho bạn

Font chữ là gì?

Font chữ là kiểu chữ mà bạn dùng để soạn thảo văn bản, hiện nay có rất nhiều font chữ khác nhau, phổ biến và được sử dụng để soạn thảo văn bản nhiều nhất phải để đến là Arial, Time New Roman…

Bảng mã vni-windows hỗ trợ font chữ nào

Bảng mã là gì?

Bảng mã hiểu đơn giản là tập hợp gồm nhiều font chữ khác nhau, có nhiều bảng mã nhưng phổ biến nhất gồm ba loại sau:

  • Unicode: Gồm các font chữ như Arial, Time New Roman…
  • TCVN3: Gồm các font chữ bắt đầu bằng dấu chấm như .VnTime, .VnArial…
  • VNI-Windows: Gồm các font chữ bắt đầu bằng chữ VNI như Vni-Times, Vni-NTime…

Những trường hợp nào cần chuyển font chữ?

Với nhiều người thì sẽ có nhiều mục đích, lý do khác nhau dẫn đến cần phải chuyển font chữ nhưng mình thì thấy như thế này, đối với các font chữ thuộc bảng mã Unicode thì nó có sẵn trên hệ điều hành Windows rồi, do vậy nếu bạn nhận một văn bản nào đó người khác họ gửi cho bạn, nếu máy tính bạn không có font chữ đó thì bạn cũng có thể đọc được bằng cách chọn lại font chữ như Arial…hoặc đơn giản máy tính bạn cũng hiển thị cho bạn đọc được (Trên các hệ điều hành mới như Windows 10, Windows 11).
 

Nhưng khi bạn nhận được hoặc khi bạn gửi file cho một ai đó mà sử dụng các font chữ thuộc bảng mã như TCVN3, VNI-Windows, lúc này nếu máy tính họ không có font chữ thuộc bảng mả đó thì sẽ không đọc được, vì các font chữ thuộc hai bảng mã này mặc định không có khi máy tính cài xong hệ điều hành Windows, mà bắt buộc bạn phải tải font chữ và cài thêm vào, và không phải ai cũng hiểu điều này, do vậy chúng ta cần lưu ý khi gửi văn bản đi nếu sử dụng font chữ nói trên bằng hai cách cơ bản sau:

  • Cách 1: Khi gửi kèm file bạn hãy gửi kèm luốn font chữ và thông báo người nhận vài vào nếu chưa có, hoặc bạn nhúng luôn font chữ đó vào file (cách này mình sẽ viết một bài khác nhé).
  • Cách 2: Chuyển đổi font chữ trước khi gửi file đi, và đây chính là nội dung chính của bài viết này.

Chuyển font chữ của VNI WINDOWS sang Unicode

Mình có một ví dụ như hình bên dưới, hiện tại nội dung đang là font chữ VNI-Times, và nó thuộc bảng mã VNI Windows, quan sát trên thanh fx các bạn sẽ thấy nội dung này không đọc được

Bảng mã vni-windows hỗ trợ font chữ nào
Font chữ thuộc bảng mã VNI-Times

Bước 1: Vào Developer\Visual Basic

Bảng mã vni-windows hỗ trợ font chữ nào

Bước 2: Chọn Insert\Module

Bảng mã vni-windows hỗ trợ font chữ nào

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 và đã kiểm tra.

Public Function VniToUni(str$) As String
    Dim VNI$, UNI$, i&, sUni$, arrUNI() As String
    VNI = "aù,aø,aû,aõ,aï,aâ,aê,aá,aà,aå,aã,aä,aé,aè,aú,aü,aë,AÙ,AØ,AÛ,AÕ,AÏ,AÂ,AÊ,AÁ,AÀ,AÅ,AÃ,AÄ,AÉ,AÈ,AÚ,AÜ,AË,eù,eø,eû,eõ,eï,eâ,eá,eà,eå,eã,eä,EÙ,EØ,EÛ,EÕ,EÏ,EÂ,EÁ,EÀ,EÅ,EÃ,EÄ,í ,ì ,æ ,ó ,ò ,Í ,Ì ,Æ ,Ó ,Ò ,où,oø,oû,oõ,oï,oâ,ô,oá,oà,oå,oã,oä,ôù,ôø,ôû,ôõ,ôï,OÙ,OØ,OÛ,OÕ,OÏ,OÂ,Ô ,OÁ,OÀ,OÅ,OÃ,OÄ,ÔÙ,ÔØ,ÔÛ,ÔÕ,ÔÏ,uù,uø,uû,uõ,uï,ö ,öù,öø,öû,öõ,öï,UÙ,UØ,UÛ,UÕ,UÏ,Ö ,ÖÙ,ÖØ,ÖÛ,ÖÕ,ÖÏ,yù,yø,yû,yõ,î ,YÙ,YØ,YÛ,YÕ,Î ,ñ ,Ñ "
    UNI = "E1,E0,1EA3,E3,1EA1,E2,103,1EA5,1EA7,1EA9,1EAB,1EAD,1EAF,1EB1,1EB3,1EB5,1EB7,C1,C0,1EA2,C3,1EA0,C2,102,1EA4,1EA6,1EA8,1EAA,1EAC,1EAE,1EB0,1EB2,1EB4,1EB6,E9,E8,1EBB,1EBD,1EB9,EA,1EBF,1EC1,1EC3,1EC5,1EC7,C9,C8,1EBA,1EBC,1EB8,CA,1EBE,1EC0,1EC2,1EC4,1EC6,ED,EC,1EC9,129,1ECB,CD,CC,1EC8,128,1ECA,F3,F2,1ECF,F5,1ECD,F4,1A1,1ED1,1ED3,1ED5,1ED7,1ED9,1EDB,1EDD,1EDF,1EE1,1EE3,D3,D2,1ECE,D5,1ECC,D4,1A0,1ED0,1ED2,1ED4,1ED6,1ED8,1EDA,1EDC,1EDE,1EE0,1EE2,FA,F9,1EE7,169,1EE5,1B0,1EE9,1EEB,1EED,1EEF,1EF1,DA,D9,1EE6,168,1EE4,1AF,1EE8,1EEA,1EEC,1EEE,1EF0,FD,1EF3,1EF7,1EF9,1EF5,DD,1EF2,1EF6,1EF8,1EF4,111,110"
    arrUNI = Split(UNI, ",")
     For i = 1 To Len(str)
            If InStr(VNI, Mid(str, i, 2)) > 0 And Len(Mid(str, i, 2)) = 2 Then
                sUni = sUni & ChrW("&h" & arrUNI(InStr(VNI, Mid(str, i, 2)) \ 3))
                 i = i + 1
            ElseIf InStr(VNI, Mid(str, i, 1) & " ") > 0 Then
                sUni = sUni & ChrW("&h" & arrUNI(InStr(VNI, Mid(str, i, 1) & " ") \ 3))
            End If
        If InStr(VNI, Mid(str, i, 1)) = 0 Or InStr("a,A,e,E,o,O,u,U,y,Y, ", Mid(str, i, 1)) > 0 Then sUni = sUni & Mid(str, i, 1)
    Next
    VniToUni = sUni
End Function
Bảng mã vni-windows hỗ trợ font chữ nào

Bước 4: Quay trở lại file excel, ở ô D2 các bạn nhập công thức =VniToUni(C2) vào và nhấn enter

Bảng mã vni-windows hỗ trợ font chữ nào

Bước 5: Kết quả

Bảng mã vni-windows hỗ trợ font chữ nào

Kết luận

Như vậy là mình vừa giới thiệu với các bạn cách chuyển đổi trực tiếp đoạn văn bản sử dụng font chữ thuộc bảng mã VNI-Times sang font chữ thuộc bảng mã Unicode, nếu có thắc mắc gì hãy để lại bình luận bên dưới bài viết này nha.

Font chữ VNI là gì?

VNI là một trong số các quy ước nhập tiếng Việt từ bàn phím quốc tế vào văn bản trên máy tính theo kiểu nhập số sau chữ cái. Khi nhập văn bản theo quy ước VNI trên bàn phím quốc tế, phần mềm tự động chuyển các số từ quy ước này sang chữ cái đặc biệt hay dấu thanh tương ứng trong font chữ tiếng Việt đang dùng.

Trong kiểu gõ VNI chữ D gõ như thế nào?

Đối với các chữ ă, đ, ê, ô bạn gõ như sau: aa=â dd=đ

Gõ VNI như thế nào?

Kiểu gõ VNI có dấu là kiểu cũng phổ biến khi như bạn Telex có dấu trên máy tính. Và để được kiểu VNI trên máy tính thì người dùng cần có công cụ tiếng Việt như Unikey hay Vietkey chẳng hạn, rồi thiết lập kiểu đúng với kiểu gõ VNI để được chữ tiếng Việt có dấu.

Bảng mã font là gì?

Bảng mã là gì? Bảng mã là cách hóa của ký tự, như hình trên có nhiều cách hóa với tên khác nhau, thường gặp nhất và Unicode, VNI, TCVN3. Bạn có thể dễ dàng đổi font chữ một cách trực quan trên phần mềm soạn thảo, còn bảng mã thì không dễ dàng như vậy, bạn cần dùng tool để đổi bảng mã, Xtea dùng Unikey.