SỐ 175
KINH NGHIỆM LẬP TRÌNH

HIỂN THỊ TIẾNG VIỆT UNICODE TRONG VB6 DỄ DÀNG HƠN!

Trong e-CHÍP số 151, anh Vũ Lương Bằng có hướng dẫn cách hiển thị tiếng Việt Unicode trong VB6. Nhưng theo cách ấy phải qua hai công đoạn, đó là phải tìm mã của từ cần hiển thị rồi chép chúng làm tham số cho hàm CharUnicode(). Trong số này, tôi xin mạo muội "chíp" một cách để hiển thị tiếng Việt Unicode dễ dàng hơn.

Trước hết, tôi cũng xây dựng một hàm tương tự như hàm CharUnicode và cũng thêm vào hộp công cụ của VB các điều khiển (control) của MS Forms 2.0 như hướng dẫn của anh Bằng. Nhưng tôi đặt tên hàm là Viethoa (Việt hóa) và tạo ra chức năng chuyển thành mã tiếng Việt Unicode đối với chuỗi được gõ vào theo cách như khi bạn gõ tiếng Việt với kiểu gõ VNI (đoạn mã 1). Ví dụ, khi bạn muốn hiển thị cụm từ "Tiếng Việt", bạn chỉ cần viết đoạn mã như sau:
Private Sub Form_Load()
cmdTiengviet.Caption = Viethoa(“Tie61ng Vie65t”)
End Sub
Bạn có thể làm tương tự để dùng kiểu gõ khác mà bạn ưa thích. Chúc bạn thành công!
Đoạn mã 1
Function Viethoa(chuoi As String)
Dim i As Integer
Dim j As Integer
For j = 1 To 2
For i = 2 To Len(chuoi)
Select Case Mid(chuoi, i, 1)
Case "1"
'a
If Mid(chuoi, i - 1, 1) = "a" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HE1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "A" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HC1) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HE2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA5) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HC2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA4) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H103) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EAF) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H102) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EAE) & Right(chuoi, Len(chuoi) - i)
End If

'e
If Mid(chuoi, i - 1, 1) = "e" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HE9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "E" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HC9) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HEA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EBF) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HCA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EBE) & Right(chuoi, Len(chuoi) - i)
End If

'i
If Mid(chuoi, i - 1, 1) = "i" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HED) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "I" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HCD) & Right(chuoi, Len(chuoi) - i)
End If

'o
If Mid(chuoi, i - 1, 1) = "o" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HF3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "O" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HD3) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HF4) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HDA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED0) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1A1) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EDB) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1A0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EDA) & Right(chuoi, Len(chuoi) - i)
End If

'u
If Mid(chuoi, i - 1, 1) = "u" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HFA) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "U" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HDA) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1B0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1AF) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE8) & Right(chuoi, Len(chuoi) - i)
End If

'y
If Mid(chuoi, i - 1, 1) = "y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HFD) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "Y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HDD) & Right(chuoi, Len(chuoi) - i)
End If

Case "2"
'a
If Mid(chuoi, i - 1, 1) = "a" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HE0) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "A" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HC0) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HE2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA7) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HC2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA6) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H103) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H102) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB0) & Right(chuoi, Len(chuoi) - i)
End If

'e
If Mid(chuoi, i - 1, 1) = "e" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HE8) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "E" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HC8) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HEA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HCA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC0) & Right(chuoi, Len(chuoi) - i)
End If

'i
If Mid(chuoi, i - 1, 1) = "i" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HEC) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "I" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HCC) & Right(chuoi, Len(chuoi) - i)
End If

'o
If Mid(chuoi, i - 1, 1) = "o" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HF2) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "O" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HD2) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HF4) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HDA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED2) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1A1) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EDD) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1A0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EDC) & Right(chuoi, Len(chuoi) - i)
End If

'u
If Mid(chuoi, i - 1, 1) = "u" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HF9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "U" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HD9) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1B0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EEB) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1AF) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EEA) & Right(chuoi, Len(chuoi) - i)
End If

'y
If Mid(chuoi, i - 1, 1) = "y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "Y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF2) & Right(chuoi, Len(chuoi) - i)
End If

Case "3"
'a
If Mid(chuoi, i - 1, 1) = "a" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "A" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA2) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HE2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HC2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA8) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H103) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H102) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB2) & Right(chuoi, Len(chuoi) - i)
End If

'e
If Mid(chuoi, i - 1, 1) = "e" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EBB) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "E" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EBA) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HEA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HCA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC2) & Right(chuoi, Len(chuoi) - i)
End If

'i
If Mid(chuoi, i - 1, 1) = "i" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "I" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC8) & Right(chuoi, Len(chuoi) - i)
End If

'o
If Mid(chuoi, i - 1, 1) = "o" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ECF) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "O" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ECE) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HF4) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED5) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HDA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED4) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1A1) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EDF) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1A0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EDE) & Right(chuoi, Len(chuoi) - i)
End If

'u
If Mid(chuoi, i - 1, 1) = "u" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE7) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "U" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE6) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1B0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EED) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1AF) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EEC) & Right(chuoi, Len(chuoi) - i)
End If

'y
If Mid(chuoi, i - 1, 1) = "y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF7) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "Y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF6) & Right(chuoi, Len(chuoi) - i)
End If

Case "4"
'a
If Mid(chuoi, i - 1, 1) = "a" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HE3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "A" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HC3) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HE2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EAB) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HC2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EAA) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H103) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB5) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H102) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB4) & Right(chuoi, Len(chuoi) - i)
End If

'e
If Mid(chuoi, i - 1, 1) = "e" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EBD) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "E" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EBC) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HEA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC5) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HCA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC4) & Right(chuoi, Len(chuoi) - i)
End If

'i
If Mid(chuoi, i - 1, 1) = "i" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H129) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "I" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H128) & Right(chuoi, Len(chuoi) - i)
End If

'o
If Mid(chuoi, i - 1, 1) = "o" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HF5) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "O" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HD5) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HF4) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED7) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HDA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED6) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1A1) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1A0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE0) & Right(chuoi, Len(chuoi) - i)
End If

'u
If Mid(chuoi, i - 1, 1) = "u" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H169) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "U" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H168) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1B0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EEF) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1AF) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EEE) & Right(chuoi, Len(chuoi) - i)
End If

'y
If Mid(chuoi, i - 1, 1) = "y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "Y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF8) & Right(chuoi, Len(chuoi) - i)
End If

Case "5"
'a
If Mid(chuoi, i - 1, 1) = "a" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "A" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EA0) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HE2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EAD) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HC2) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EAC) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H103) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB7) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H102) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB6) & Right(chuoi, Len(chuoi) - i)
End If

'e
If Mid(chuoi, i - 1, 1) = "e" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "E" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EB8) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HEA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC7) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HCA) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EC6) & Right(chuoi, Len(chuoi) - i)
End If

'i
If Mid(chuoi, i - 1, 1) = "i" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ECB) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "I" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ECA) & Right(chuoi, Len(chuoi) - i)
End If

'o
If Mid(chuoi, i - 1, 1) = "o" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ECD) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "O" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ECC) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&HF4) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED9) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&HD4) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1ED8) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1A1) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE3) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1A0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE2) & Right(chuoi, Len(chuoi) - i)
End If

'u
If Mid(chuoi, i - 1, 1) = "u" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE5) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "U" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EE4) & Right(chuoi, Len(chuoi) - i)
End If

If Mid(chuoi, i - 1, 1) = ChrW$(&H1B0) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = ChrW$(&H1AF) Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF0) & Right(chuoi, Len(chuoi) - i)
End If

'y
If Mid(chuoi, i - 1, 1) = "y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF5) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "Y" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1EF4) & Right(chuoi, Len(chuoi) - i)
End If

Case "6"
'a
If Mid(chuoi, i - 1, 1) = "a" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HE2) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "A" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HC2) & Right(chuoi, Len(chuoi) - i)
End If

'e
If Mid(chuoi, i - 1, 1) = "e" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HEA) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "E" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HCA) & Right(chuoi, Len(chuoi) - i)
End If

'o
If Mid(chuoi, i - 1, 1) = "o" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HF4) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "O" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&HD4) & Right(chuoi, Len(chuoi) - i)
End If

Case "7"
'o
If Mid(chuoi, i - 1, 1) = "o" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1A1) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "O" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1A0) & Right(chuoi, Len(chuoi) - i)
End If

'u
If Mid(chuoi, i - 1, 1) = "u" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1B0) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "U" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H1AF) & Right(chuoi, Len(chuoi) - i)
End If

Case "8"
'a
If Mid(chuoi, i - 1, 1) = "a" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H103) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "A" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H102) & Right(chuoi, Len(chuoi) - i)
End If

Case "9"
'd
If Mid(chuoi, i - 1, 1) = "d" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H111) & Right(chuoi, Len(chuoi) - i)
End If
If Mid(chuoi, i - 1, 1) = "D" Then
chuoi = Left(chuoi, i - 2) & ChrW$(&H110) & Right(chuoi, Len(chuoi) - i)
End If
End Select
Next i
Next j
Viethoa = chuoi
End Function
Huyata Kudo (TP.HCM)

Lời bàn của CHƯƠNG CAN CHÍP
Hàm VietHoa theo cách mần tiếng Việt này giống như một bộ gõ Unicode với phương pháp gõ VNI. Bà con không cần sử dụng kèm bất kỳ bộ gõ tiếng Việt nào cả. Do đó, người nhập dữ kiện vào ô văn bản (text box) theo phương pháp VNI sẽ thấy dữ kiện tiếng Việt hiển thị ngay lập tức trong ô văn bản. Để mần được như thế, bà con chỉ cần đặt dòng lệnh sau đây vào thủ tục xử lý tình huống Change:
Private Sub txtNhapDuKien_Change()
txtNhapDuKien.Text = Viethoa(txtNhapDuKien.Text)
End Sub
Với txtNhapDuKien là tên của ô văn bản để người ta nhập dữ kiện vào.

[Đầu trang]
Trang chủ
Nội lực "Peter Pan"
Cầu nối Intel Việt Nam
Chuyện trong tuần
Cõi người ta
Bình luận thị trường
Cõi Mô-bai
Chuyên đề
Bổ ngửa
Túi càn khôn IT
Hồ lô biến
Cảm về Game
Nhật ký e-CHÍP
Bản quyền Công ty Phần mềm & Truyền thông VASC
 99 Triệu Việt Vương HN; Tel: (04) 9782235 • email: echip@vasc.com.vn
Mọi chi tiết về kinh doanh và quảng cáo xin liên hệ Phòng Quảng cáo. Tel: (04) 9782077 kd@vasc.com.vn