Tạo Button thoát khỏi excell hiện ra câu lệnh bằng tiếng việt

Liên hệ QC

maiemveanhnhe

Thành viên chính thức
Tham gia
13/1/11
Bài viết
87
Được thích
7
Mình đang học hỏi trên diễn đàn này. Mình có sưu tầm và làm được 1 vài thứ. Tuy nhiên mình tìm mãi không thấy có bài giống như ý mình. Nhờ bạn nào biết Addline cho mình Hoăc hường dẫn dùm mình bài này với. Trân thành cảm ơn.
 

File đính kèm

Mình đang học hỏi trên diễn đàn này. Mình có sưu tầm và làm được 1 vài thứ. Tuy nhiên mình tìm mãi không thấy có bài giống như ý mình. Nhờ bạn nào biết Addline cho mình Hoăc hường dẫn dùm mình bài này với. Trân thành cảm ơn.
Nó đây:
PHP:
Function UniConvert(Text As String, InputMethod As String) As String
  Dim VNI_Type, Telex_Type, CharCode, Temp, i As Long
  UniConvert = Text
  VNI_Type = Array("a81", "a82", "a83", "a84", "a85", "a61", "a62", "a63", "a64", "a65", "e61", _
      "e62", "e63", "e64", "e65", "o61", "o62", "o63", "o64", "o65", "o71", "o72", "o73", "o74", _
      "o75", "u71", "u72", "u73", "u74", "u75", "a1", "a2", "a3", "a4", "a5", "a8", "a6", "d9", _
      "e1", "e2", "e3", "e4", "e5", "e6", "i1", "i2", "i3", "i4", "i5", "o1", "o2", "o3", "o4", _
      "o5", "o6", "o7", "u1", "u2", "u3", "u4", "u5", "u7", "y1", "y2", "y3", "y4", "y5")
  Telex_Type = Array("aws", "awf", "awr", "awx", "awj", "aas", "aaf", "aar", "aax", "aaj", "ees", _
      "eef", "eer", "eex", "eej", "oos", "oof", "oor", "oox", "ooj", "ows", "owf", "owr", "owx", _
      "owj", "uws", "uwf", "uwr", "uwx", "uwj", "as", "af", "ar", "ax", "aj", "aw", "aa", "dd", _
      "es", "ef", "er", "ex", "ej", "ee", "is", "if", "ir", "ix", "ij", "os", "of", "or", "ox", _
      "oj", "oo", "ow", "us", "uf", "ur", "ux", "uj", "uw", "ys", "yf", "yr", "yx", "yj")
  CharCode = Array(ChrW(7855), ChrW(7857), ChrW(7859), ChrW(7861), ChrW(7863), ChrW(7845), ChrW(7847), _
      ChrW(7849), ChrW(7851), ChrW(7853), ChrW(7871), ChrW(7873), ChrW(7875), ChrW(7877), ChrW(7879), _
      ChrW(7889), ChrW(7891), ChrW(7893), ChrW(7895), ChrW(7897), ChrW(7899), ChrW(7901), ChrW(7903), _
      ChrW(7905), ChrW(7907), ChrW(7913), ChrW(7915), ChrW(7917), ChrW(7919), ChrW(7921), ChrW(225), _
      ChrW(224), ChrW(7843), ChrW(227), ChrW(7841), ChrW(259), ChrW(226), ChrW(273), ChrW(233), ChrW(232), _
      ChrW(7867), ChrW(7869), ChrW(7865), ChrW(234), ChrW(237), ChrW(236), ChrW(7881), ChrW(297), ChrW(7883), _
      ChrW(243), ChrW(242), ChrW(7887), ChrW(245), ChrW(7885), ChrW(244), ChrW(417), ChrW(250), ChrW(249), _
      ChrW(7911), ChrW(361), ChrW(7909), ChrW(432), ChrW(253), ChrW(7923), ChrW(7927), ChrW(7929), ChrW(7925))
  Select Case InputMethod
    Case Is = "VNI": Temp = VNI_Type
    Case Is = "Telex": Temp = Telex_Type
  End Select
  For i = 0 To UBound(CharCode)
    UniConvert = Replace(UniConvert, Temp(i), CharCode(i))
    UniConvert = Replace(UniConvert, UCase(Temp(i)), UCase(CharCode(i)))
  Next i
End Function
PHP:
Sub Auto_Close()
  Dim Tit As String, Cnt As String, Res As Long
  Application.DisplayAlerts = False
  Tit = "THÔNG BÁO"
  Cnt = UniConvert("Ba5n co1 muo61n lu7u ba2i la5i kho6ng?", "VNI")
  Res = CreateObject("WScript.Shell").Popup(Cnt, , Tit, 4)
  ThisWorkbook.Close (Res = 6)
  Application.DisplayAlerts = True
End Sub
 

File đính kèm

Upvote 0
Cảm ơn anh rất nhiều. Tuy nhiên chỉ có cái bảng thông báo đó thôi mà viết nhiều dử hé. Em nhìn vô chẳng hiểu gì luôn. Cho em hỏi có phải mấy chữ a81, a82.... là kiểu gõ Talex hay VNI đúng không, còn cái này nữa UniConvert = Replace(UniConvert, Temp(i), CharCode(i))
UniConvert = Replace(UniConvert, UCase(Temp(i)), UCase(CharCode(i
)) và
Chrw (253)....là cái gì hỡi anh mình, giải thích giùm mình chi tiết chút đi anh NDU96081631 ơi.
 
Upvote 0
Vì cái MSGBOX của Excel không hỗ trợ Tiếng Việt - Font Uni nên code dài là do hàm UniConvert dùng để giúp Msgbox hiển thị được tiếng Việt đó. Code chính chỉ vài dòng trong Auto_Close thôi và nếu hiển thị Tiếng Việt không dấu thì code sẽ đơn giản hơn.

TDN
 
Upvote 0
Cảm ơn anh rất nhiều. Tuy nhiên chỉ có cái bảng thông báo đó thôi mà viết nhiều dử hé. Em nhìn vô chẳng hiểu gì luôn. Cho em hỏi có phải mấy chữ a81, a82.... là kiểu gõ Talex hay VNI đúng không, còn cái này nữa UniConvert = Replace(UniConvert, Temp(i), CharCode(i))
UniConvert = Replace(UniConvert, UCase(Temp(i)), UCase(CharCode(i
)) và
Chrw (253)....là cái gì hỡi anh mình, giải thích giùm mình chi tiết chút đi anh NDU96081631 ơi.

Neeus lập trình VBA thì những hàm chuyển đổi mã kiểu Unicovert là cần thiết. Nếu bạn không muốn dùng hàm Unicovert, bạn để chuỗi unicode trên worksheet.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Wow. Như anh Nguyễn Duy Tuân em còn hiểu hiểu, chút chút, bản tính em hơi tò mò, hỏi là hỏi cho tới luôn. Giải thích dòng này dùm em luôn đi chữ màu đỏ đó. Cnt = Sheets("msg").Range("A1").Value
Res = CreateObject("WScript.Shell").Popup(Cnt, , Tit, 4)
ThisWorkbook.Close (Res = 6). Cảm ơn mấy anh nhiều. Chúc mấy anh tấn tài tấn lộc tấn bình an, tấn Cà tấn Đậu, tấn Khoai Lan.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom