Hỏi: Cách hiện thị Msgbox!! (1 người xem)

  • Thread starter Thread starter nad582
  • Ngày gửi Ngày gửi

Người dùng đang xem chủ đề này

nad582

Thành viên thường trực
Tham gia
7/6/11
Bài viết
317
Được thích
48
Chào các a(c) trong GPE!
e muốn hiện thị Msgbox như trong hình thì phải làm sao? xin a(c) chỉ giúp dùm! e chân thành cảm ơn!!
View attachment 127061
e dùng cái này mà ko giống!!
Mã:
Sub hien_msgbox()msgbox "Truong: Dai Hoc Mo TP.HCM Sinh vien: Nguyen Van A Lop: KT12A MSSV: 025461A74", , "Thong tin"
End Sub
.................
mong hồi âm!!
 
bạn thử cái này
Mã:
Sub Hienbox()
    MsgBox "Truong DH Mo" & Chr(10) & "thanh pho ho chi minh", , "Thong bao"    
End Sub
Chr(10) là xuống dòng trong msgbox
 
Upvote 0
Chào các a(c) trong GPE!
e muốn hiện thị Msgbox như trong hình thì phải làm sao? xin a(c) chỉ giúp dùm! e chân thành cảm ơn!!
View attachment 127061
e dùng cái này mà ko giống!!
Mã:
Sub hien_msgbox()msgbox "Truong: Dai Hoc Mo TP.HCM Sinh vien: Nguyen Van A Lop: KT12A MSSV: 025461A74", , "Thong tin"
End Sub
.................
mong hồi âm!!
để xuống dòng chuỗi prompt trong msgbox bạn dùng thêm ký tự Chr(10)
Mã:
Sub ktr()
    strpromp = "Truong: Dai Hoc Mo TP.HCM" & Chr(10) & _
            "Sinh vien: Nguyen Van A" & Chr(10) & _
            "Lop: KT12A MSSV: 025461A74"
    MsgBox strpromp, , "Thong tin"
End Sub
 
Upvote 0
để xuống dòng chuỗi prompt trong msgbox bạn dùng thêm ký tự Chr(10)
Mã:
Sub ktr()
    strpromp = "Truong: Dai Hoc Mo TP.HCM" & [B][COLOR=#ff0000]Chr(10)[/COLOR][/B] & _
            "Sinh vien: Nguyen Van A" & [COLOR=#ff0000][B]Chr(10)[/B][/COLOR] & _
            "Lop: KT12A MSSV: 025461A74"
    MsgBox strpromp, , "Thong tin"
End Sub
Các bạn thường hay dùng hàm quá ta! Vầy đi cho dễ nhớ:

Mã:
Sub test()
    MsgBox "Hoang" & [COLOR=#ff0000][B]vbLf [/B][/COLOR]& _
           "Trong" & [B][COLOR=#ff0000]vbLf [/COLOR][/B]& _
           "Nghia"
End Sub
 

File đính kèm

  • vbLf.jpg
    vbLf.jpg
    37.2 KB · Đọc: 124
Lần chỉnh sửa cuối:
Upvote 0
- có khá nhiều cách để xuống dòng (#4) ---> chọn 1 cái khiến bạn dễ nhớ nhất (mình thì hay dùng vbnewline --=0),

- còn vấn đề hiển thị tiếng Việt của Msgbox ???
 
Upvote 0
- có khá nhiều cách để xuống dòng (#4) ---> chọn 1 cái khiến bạn dễ nhớ nhất (mình thì hay dùng vbnewline --=0),

- còn vấn đề hiển thị tiếng Việt của Msgbox ???

vấn đề này có nhiều trên diễn đàn rồi mà :
Dùng hàm API :

Mã:
Option Explicit
#If VBA7 Then
    Private Declare PtrSafe Function MessageBoxW Lib "user32" _
                    (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
    Private Declare PtrSafe Function GetActiveWindow Lib "user32" () As Long
#Else
    Private Declare Function MessageBoxW Lib "user32" _
                    (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
    Private Declare Function GetActiveWindow Lib "user32" () As Long
#End If
Mã:
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Function MsgBoxUni(ByVal PromptUni As Variant, Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, _
                Optional ByVal TitleUni As Variant = vbNullString) As VbMsgBoxResult
 Dim BStrMsg, BStrTitle
 'Ham StrConv Chuyen chuoi ve ma Unicode
 BStrMsg = StrConv(PromptUni, vbUnicode)
 BStrTitle = StrConv(TitleUni, vbUnicode)
 MsgBoxUni = MessageBoxW(GetActiveWindow, BStrMsg, BStrTitle, Buttons)
End Function
thêm hàm uniconver của anh Ndu:
Mã:
Function UniConvert(ByVal Text As String, ByVal 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
bây giờ bạn muốn hiển thị tiếng việt trong msgbox thì ví dụ :
Mã:
Sub AAAA()
Dim prompt As String
    prompt = UniConvert("Hoj vaf teen :" & Chr(10) & "ddija chir : ", "Telex")
    MsgBoxUni prompt
End Sub
 
Upvote 0
vấn đề này có nhiều trên diễn đàn rồi mà :
Dùng hàm API :
...

- cảm ơn bác đã chia sẻ,
- ý của em là muốn hỏi chủ Topic sao ko thấy hỏi về vấn đề đó -\\/.

'---------
đã thử code trên và nhận ra 1 "vấn đề nhỏ", nếu như thao tác gõ dấu ko thống nhất trong 1 chuỗi ---> sẽ hiện thị chưa đúng.

ví dụ:

Mã:
Sub AAAA()

Dim prompt As String

    'prompt = UniConvert("Hoj vaf teen :" & Chr(10) & "[B][COLOR=#b22222][SIZE=4]ddija[/SIZE][/COLOR][/B] chir : ", "Telex")
    
    prompt = UniConvert("Hoj vaf teen :" & Chr(10) & "[B][COLOR=#b22222][SIZE=4]ddiaj[/SIZE][/COLOR][/B] chir : ", "Telex") 'khac nhau o? chu~ ddiaj
    
    MsgBoxUni prompt
    
End Sub
'--------
cách làm của e hơi khác nhưng thấy "rất ổn" --=0 (có thể chậm hơn 1 tí)
(1) nhập nội dung trên sheet --> dùng hàm UniVba của bác phamduylong để chuyển chuỗi
(2) copy value nội dung đã chuyển vào code.

Mã:
Sub AAAA_2()

Dim prompt As String
    
    prompt = "H" & ChrW(7885) & " và tên, " & ChrW(273) & ChrW(7883) & "a ch" & ChrW(7881)
    
    MsgBoxUni prompt
    
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
cách làm của e hơi khác nhưng thấy "rất ổn" --=0 (có thể chậm hơn 1 tí)
(1) nhập nội dung trên sheet --> dùng hàm UniVba của bác phamduylong để chuyển chuỗi
(2) copy value nội dung đã chuyển vào code.

Bạn dùng cách này khỏe hơn:
- Mở Word
- Bật công cụ Record Macro
- Gõ chuỗi tiếng Việt gì đó vào trang Word
- Tắt Record macro
- Alt + F11, có ngay code ("H" & ChrW(7885) & gì gì đó)
- Mang nó về paste vào cửa sổ VBA của Excel
-------------------------
Cách này do Hoàng Trọng Nghĩa phát hiện
 
Upvote 0
Bạn dùng cách này khỏe hơn:
- Mở Word
- Bật công cụ Record Macro
- Gõ chuỗi tiếng Việt gì đó vào trang Word
- Tắt Record macro
- Alt + F11, có ngay code ("H" & ChrW(7885) & gì gì đó)
- Mang nó về paste vào cửa sổ VBA của Excel
-------------------------
Cách này do Hoàng Trọng Nghĩa phát hiện
Sao em làm như hướng dẫn mà không được nhỉ ?
Đây là đoạn code trong word
Mã:
Selection.TypeText Text:="Cá  Ng" & ChrW(7915) & " F1"
Code trong module:
Mã:
Sub Msg()
    MsgBox "Cá  Ng" & ChrW(7915) & " F1", , "Thong Bao"
End Sub
F1.jpg
 
Upvote 0
bác F1 thử kèm thêm Function MsgBoxUni vào xem có được ko nhé !
OK, cảm ơn bạn,
Mã:
Option Explicit
#If VBA7 Then
    Private Declare PtrSafe Function MessageBoxW Lib "user32" _
                    (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
    Private Declare PtrSafe Function GetActiveWindow Lib "user32" () As Long
#Else
    Private Declare Function MessageBoxW Lib "user32" _
                    (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
    Private Declare Function GetActiveWindow Lib "user32" () As Long


#End If
Function MsgBoxUni(ByVal PromptUni As Variant, Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, _
                Optional ByVal TitleUni As Variant = vbNullString) As VbMsgBoxResult
 Dim BStrMsg, BStrTitle
 'Ham StrConv Chuyen chuoi ve ma Unicode
 BStrMsg = StrConv(PromptUni, vbUnicode)
 BStrTitle = StrConv(TitleUni, vbUnicode)
 MsgBoxUni = MessageBoxW(GetActiveWindow, BStrMsg, BStrTitle, Buttons)
End Function


Function UniConvert(ByVal Text As String, ByVal 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


Sub Msg()
    MsgBoxUni "Cá  Ng" & ChrW(7915) & " F1", , "Thong Bao"
End Sub
 
Upvote 0
OK, cảm ơn bạn,
Mã:
Option Explicit
#If VBA7 Then
    Private Declare PtrSafe Function MessageBoxW Lib "user32" _
                    (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
    Private Declare PtrSafe Function GetActiveWindow Lib "user32" () As Long
#Else
    Private Declare Function MessageBoxW Lib "user32" _
                    (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
    Private Declare Function GetActiveWindow Lib "user32" () As Long


#End If
Function MsgBoxUni(ByVal PromptUni As Variant, Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, _
                Optional ByVal TitleUni As Variant = vbNullString) As VbMsgBoxResult
 Dim BStrMsg, BStrTitle
 'Ham StrConv Chuyen chuoi ve ma Unicode
 BStrMsg = StrConv(PromptUni, vbUnicode)
 BStrTitle = StrConv(TitleUni, vbUnicode)
 MsgBoxUni = MessageBoxW(GetActiveWindow, BStrMsg, BStrTitle, Buttons)
End Function


Function UniConvert(ByVal Text As String, ByVal 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


Sub Msg()
    MsgBoxUni "Cá  Ng" & ChrW(7915) & " F1", , "Thong Bao"
End Sub
Đã dùng trực tiếp "Cá Ng" & ChrW(7915) & " F1" thì bỏ hàm UniConvert đi nhé ---> Thừa
 
Upvote 0
Các bạn muốn một MsgBox mượt mà như trong hình không? Kể cả nút lệnh cũng được Việt hóa!

attachment.php


Hãy trải nghiệm tại bài này!

Tặng Hàm MsgBox Việt hóa bằng Unicode tuyệt đẹp!
 
Upvote 0
Hiển thị Msgbox theo điều kiện!!

E có dữ liệu do e đặt ra, nhờ a(c) giúp dùm e bài tập như sau:
View attachment 127111
theo ví dụ:
ở cột D từ dòng 13 đến dòng 65000, ta dò từ D13 đến D65000 nếu dòng nào xuất hiện dấu "!!" thì hiện bảng thông báo:
Msgbox "Điều kiện 1 không thỏa ở tên 1:" & "Điều kiện 1 không thỏa ở tên 2:"
ví dụ như hình:
cột A có tên 1 là AAA, và cột B có tên 2 là XXX và OOO như vậy khi dò từ D13 đến D65000 có dấu "!!" xuất hiện (ở vị trí D18) ứng với tên 1 là AAA và ứng với tên 2 là OOO
vậy kết quả thu được là:
View attachment 127112
Trường hợp dấu "!!" xuất hiện như trong hình (e cũng ko biết diễn tả thế nào!!)
View attachment 127113
thì kết quả là:
View attachment 127114
Trường hợp có dấu "!!" xuất hiện 2 hay nhiều lần ứng với tên 1 và tên 2 thì chỉ lấy 1 lần thôi!!
View attachment 127115
như vậy kết quả hiện Msgbox như trên hình!!
E diễn giải hơi dài mong các a(c) giúp dùm e!!
 
Upvote 0
E có dữ liệu do e đặt ra, nhờ a(c) giúp dùm e bài tập như sau:
View attachment 127111
theo ví dụ:
ở cột D từ dòng 13 đến dòng 65000, ta dò từ D13 đến D65000 nếu dòng nào xuất hiện dấu "!!" thì hiện bảng thông báo:
Msgbox "Điều kiện 1 không thỏa ở tên 1:" & "Điều kiện 1 không thỏa ở tên 2:"
ví dụ như hình:
cột A có tên 1 là AAA, và cột B có tên 2 là XXX và OOO như vậy khi dò từ D13 đến D65000 có dấu "!!" xuất hiện (ở vị trí D18) ứng với tên 1 là AAA và ứng với tên 2 là OOO
vậy kết quả thu được là:
View attachment 127112
Trường hợp dấu "!!" xuất hiện như trong hình (e cũng ko biết diễn tả thế nào!!)
View attachment 127113
thì kết quả là:
View attachment 127114
Trường hợp có dấu "!!" xuất hiện 2 hay nhiều lần ứng với tên 1 và tên 2 thì chỉ lấy 1 lần thôi!!
View attachment 127115
như vậy kết quả hiện Msgbox như trên hình!!
E diễn giải hơi dài mong các a(c) giúp dùm e!!

Thứ nhất, những cái hình nhỏ xíu chả thấy gì hết!

Thứ hai, điều kiện nào để MsgBox hiện ra? Bấm nút để dò từ trên xuống dưới cột D? Hàng nào có dấu "!" thì báo? Nếu lỡ có hết cả cột thì hiện thông báo mấy chục ngàn lần thông báo?

Thứ ba, sao không dùng Conditional Formatting cho các trường hợp này? (File đính kèm được sử dụng CF).
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Thứ nhất, những cái hình nhỏ xíu chả thấy gì hết!

Thứ hai, điều kiện nào để MsgBox hiện ra? Bấm nút để dò từ trên xuống dưới cột D? Hàng nào có dấu "!" thì báo? Nếu lỡ có hết cả cột thì hiện thông báo mấy chục ngàn lần thông báo?

Thứ ba, sao không dùng Conditional Formatting cho các trường hợp này? (File đính kèm được sử dụng CF).
cảm ơn anh!!
Thứ 1: chắc e chụp màn hình rộng như khi post lên sao nó nhỏ thế (a bấm vào tấm hình đó xem giúp em)...
Thứ 2: dạ đúng là bấm nút để kiểm tra, không phải mỗi hàng có dấu "!!" thì đều báo, dò những hàng nào có dấu "!!" thì báo cho 1 Msgbox như e đã ví dụ ở bài #1
Thứ 3: e ko biết dùng Conditional Formatting a có thể chỉ e thêm phần này được ko?
.......................
a giúp e 2 ý, thứ 2 và 3!! e chân thành cảm ơn
 
Upvote 0
cảm ơn anh!!
Thứ 1: chắc e chụp màn hình rộng như khi post lên sao nó nhỏ thế (a bấm vào tấm hình đó xem giúp em)...
Thứ 2: dạ đúng là bấm nút để kiểm tra, không phải mỗi hàng có dấu "!!" thì đều báo, dò những hàng nào có dấu "!!" thì báo cho 1 Msgbox như e đã ví dụ ở bài #1
Thứ 3: e ko biết dùng Conditional Formatting a có thể chỉ e thêm phần này được ko?
.......................
a giúp e 2 ý, thứ 2 và 3!! e chân thành cảm ơn

Vấn đề Conditional Formatting bạn tham khảo bài viết này:

Định dạng theo điều kiện trong Excel 97-2010


Và nếu làm bằng cách này, bạn không cần phải cho hiện thông báo nữa, vì nó rất trực quan (nhìn file tôi gửi lên bạn cũng thấy điều đó).
 
Upvote 0
Upvote 0
Còn nếu msgbox thì nhờ a suy nghĩ giúp e!! e cảm ơn
Tôi giả sử, nếu cột D có dữ liệu 2000 dòng, và trong đó có 500 dòng có chứa "!!", vậy bạn có đủ kiên nhẫn để bấm OK của MsgBox đến 500 lần không? Nếu có thì tôi sẽ làm cho bạn! Vì điều này tôi thấy không cần thiết chút nào hết và rất mất công!
 
Upvote 0
Tôi giả sử, nếu cột D có dữ liệu 2000 dòng, và trong đó có 500 dòng có chứa "!!", vậy bạn có đủ kiên nhẫn để bấm OK của MsgBox đến 500 lần không? Nếu có thì tôi sẽ làm cho bạn! Vì điều này tôi thấy không cần thiết chút nào hết và rất mất công!
Ý em ko phải như vậy!! e trình bày lại để a hiểu hơn!!
em xin mượn ảnh ở bài #1 (2 ngày nay ko biết lý do gì mà em úp ảnh hay file .rar lên mà nó ko cho, dung lượng chỉ 200kb trở lại thôi nhưng dưới 50kb thì được)
Nếu như dấu "!!" xuất hiện ở nhiều dòng?
ví dụ như hình:
-ở dòng 18 dấu "!!" xuất hiện ứng với tên 1 "AAA" và tên 2 "OO"
-ở dòng 20 dấu "!!" xuất hiện ứng với tên 1 "BBB" và tên 2 "MM"
-ở dòng 23 dấu "!!" xuất hiện ứng với tên 1 "BBB" và tên 2 "MM"

-ở dòng 27 dấu "!!" xuất hiện ứng với tên 1 "CCC" và tên 2 "LL"
-ở dòng 28 dấu "!!" xuất hiện ứng với tên 1 "CCC" và tên 2 "LL"

như vậy thông báo hiện lên là:
Msgbox "ký hiệu Không thỏa có tên là: AAA + OO; BBB + MM; CCC + LL"
Lưu ý: nếu dấu "!!" xuất hiện nhiều lần ứng với tên 1 và tên 2 trùng nhau thì kết quả chỉ lấy 1 dòng thôi.ví dụ hàng tô màu! (a xem kết quả để hiểu lưu ý)
cảm ơn anh!! mong hồi âm
 
Upvote 0
bài này mà cho làm trên UserForm thì đã "xong 7 đời" ,,,,,,, (nhưng lại ko ăn nhập với chủ đề đã hỏi ...)
 
Upvote 0
Ý em ko phải như vậy!! e trình bày lại để a hiểu hơn!!

em xin mượn ảnh ở bài #1 (2 ngày nay ko biết lý do gì mà em úp ảnh hay file .rar lên mà nó ko cho, dung lượng chỉ 200kb trở lại thôi nhưng dưới 50kb thì được)
Nếu như dấu "!!" xuất hiện ở nhiều dòng?
ví dụ như hình:
-ở dòng 18 dấu "!!" xuất hiện ứng với tên 1 "AAA" và tên 2 "OO"
-ở dòng 20 dấu "!!" xuất hiện ứng với tên 1 "BBB" và tên 2 "MM"
-ở dòng 23 dấu "!!" xuất hiện ứng với tên 1 "BBB" và tên 2 "MM"

-ở dòng 27 dấu "!!" xuất hiện ứng với tên 1 "CCC" và tên 2 "LL"
-ở dòng 28 dấu "!!" xuất hiện ứng với tên 1 "CCC" và tên 2 "LL"

như vậy thông báo hiện lên là:
Msgbox "ký hiệu Không thỏa có tên là: AAA + OO; BBB + MM; CCC + LL"
Lưu ý: nếu dấu "!!" xuất hiện nhiều lần ứng với tên 1 và tên 2 trùng nhau thì kết quả chỉ lấy 1 dòng thôi.ví dụ hàng tô màu! (a xem kết quả để hiểu lưu ý)
cảm ơn anh!! mong hồi âm
em bổ sung là mình tạo cái nút bấm để kiểm tra!!
 
Upvote 0
Ý em ko phải như vậy!! e trình bày lại để a hiểu hơn!!

em xin mượn ảnh ở bài #1 (2 ngày nay ko biết lý do gì mà em úp ảnh hay file .rar lên mà nó ko cho, dung lượng chỉ 200kb trở lại thôi nhưng dưới 50kb thì được)
Nếu như dấu "!!" xuất hiện ở nhiều dòng?
ví dụ như hình:
-ở dòng 18 dấu "!!" xuất hiện ứng với tên 1 "AAA" và tên 2 "OO"
-ở dòng 20 dấu "!!" xuất hiện ứng với tên 1 "BBB" và tên 2 "MM"
-ở dòng 23 dấu "!!" xuất hiện ứng với tên 1 "BBB" và tên 2 "MM"

-ở dòng 27 dấu "!!" xuất hiện ứng với tên 1 "CCC" và tên 2 "LL"
-ở dòng 28 dấu "!!" xuất hiện ứng với tên 1 "CCC" và tên 2 "LL"

như vậy thông báo hiện lên là:
Msgbox "ký hiệu Không thỏa có tên là: AAA + OO; BBB + MM; CCC + LL"
Lưu ý: nếu dấu "!!" xuất hiện nhiều lần ứng với tên 1 và tên 2 trùng nhau thì kết quả chỉ lấy 1 dòng thôi.ví dụ hàng tô màu! (a xem kết quả để hiểu lưu ý)
cảm ơn anh!! mong hồi âm

Chép Code dưới đây vào file của bạn, đồng thời, tự bạn tạo nút lệnh đi nhé!

Mã:
Sub ThongBao()
    Dim ArrSource, ArrTemp()
    Dim r As Long, n As Long
    r = Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row
    ArrSource = Sheets("Sheet1").Range("A14:D" & r)
    For r = 1 To UBound(ArrSource)
        If ArrSource(r, 4) = "!!" Then
            n = n + 1
            ReDim Preserve ArrTemp(1 To n)
            ArrTemp(n) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
    Next
    If n Then
        Dim Dict As Object
        Set Dict = CreateObject("Scripting.Dictionary")
        For r = 1 To n
            Dict(ArrTemp(r)) = Empty
        Next
        MsgBox "Co " & Dict.Count & " muc khong thoa dieu kien la:" _
                     & vbLf & Join(Dict.Keys, vbLf)
    Else
        MsgBox "Tat ca deu thoa dieu kien!"
    End If
End Sub

--------------------------------
Theo tôi thì không cần cột D (DK1), bởi cứ cột C > 0 là OK, dùng CF cũng ngon mà dùng VBA xài mảng cũng đỡ tốn 1 cột!
 
Lần chỉnh sửa cuối:
Upvote 0
Chép Code dưới đây vào file của bạn, đồng thời, tự bạn tạo nút lệnh đi nhé!

Mã:
Sub ThongBao()
    Dim ArrSource, ArrTemp()
    Dim r As Long, n As Long
    r = Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row
    ArrSource = Sheets("Sheet1").Range("A14:D" & r)
    For r = 1 To UBound(ArrSource)
        If ArrSource(r, 4) = "!!" Then
            n = n + 1
            ReDim Preserve ArrTemp(1 To n)
            ArrTemp(n) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
    Next
    If n Then
        Dim Dict As Object
        Set Dict = CreateObject("Scripting.Dictionary")
        For r = 1 To n
            Dict(ArrTemp(r)) = Empty
        Next
        MsgBox "Co " & Dict.Count & " muc khong thoa dieu kien la:" _
                     & vbLf & Join(Dict.Keys, vbLf)
    Else
        MsgBox "Tat ca deu thoa dieu kien!"
    End If
End Sub

--------------------------------
Theo tôi thì không cần cột D (DK1), bởi cứ cột C > 0 là OK, dùng CF cũng ngon mà dùng VBA xài mảng cũng đỡ tốn 1 cột!
cảm ơn anh!! rất đúng với yêu cầu của em!!
Em còn 1 ý nữa là: nếu e thêm ở cột E 1 điều kiện nữa là "điều kiện 2"
tương tự như bài #1, ở cột E cũng có xuất hiện dấu "!!" thì e dùng code ở bài #23 sửa lại nó sẽ ra kết quả tương tự bài #1..!!
Vậy làm sao để kết hợp 1 Msgbox cho điều kiện 1 và điều kiện 2??
ví dụ:
cột D có 3 mục không thỏa, cột E có 5 mục không thỏa
kết quả sẽ hiện thông báo:
Msgbox "có 3 mục không thỏa điều kiện 1 là: AAA + OO; BBB + MM; CCC + LL" &_
"có 5 mục không thỏa điều kiện 2 là: AAA + OO; BBB + MM; BBB + NN; CCC + LL; CCC + KK"
e chân thành cảm ơn!! mong, a hồi âm!!
 
Upvote 0
cảm ơn anh!! rất đúng với yêu cầu của em!!
Em còn 1 ý nữa là: nếu e thêm ở cột E 1 điều kiện nữa là "điều kiện 2"
tương tự như bài #1, ở cột E cũng có xuất hiện dấu "!!" thì e dùng code ở bài #23 sửa lại nó sẽ ra kết quả tương tự bài #1..!!
Vậy làm sao để kết hợp 1 Msgbox cho điều kiện 1 và điều kiện 2??
ví dụ:
cột D có 3 mục không thỏa, cột E có 5 mục không thỏa
kết quả sẽ hiện thông báo:
Msgbox "có 3 mục không thỏa điều kiện 1 là: AAA + OO; BBB + MM; CCC + LL" &_
"có 5 mục không thỏa điều kiện 2 là: AAA + OO; BBB + MM; BBB + NN; CCC + LL; CCC + KK"
e chân thành cảm ơn!! mong, a hồi âm!!

Chép code dưới đây vào file nhé!

Mã:
Sub ThongBao()
    Dim ArrCond, ArrSource
    Dim ArrTemp1(), ArrTemp2()
    Dim m As Long, n As Long, r As Long
    r = Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row
    ArrCond = Sheets("Sheet1").Range("D14:E" & r)
    ArrSource = Sheets("Sheet1").Range("A14:B" & r)
    For r = 1 To UBound(ArrCond)
        If ArrCond(r, 1) = "!!" Then
            m = m + 1
            ReDim Preserve ArrTemp1(1 To m)
            ArrTemp1(m) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
        If ArrCond(r, 2) = "!!" Then
            n = n + 1
            ReDim Preserve ArrTemp2(1 To n)
            ArrTemp2(n) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
    Next
    If m Then
        Dim Dict1 As Object
        Set Dict1 = CreateObject("Scripting.Dictionary")
        For r = 1 To m
            Dict1(ArrTemp1(r)) = Empty
        Next
        MsgBox "Co " & Dict1.Count & " muc khong thoa dieu kien 1 la:" _
                     & vbLf & Join(Dict1.Keys, vbLf), vbInformation, "DIEU KIEN 1"
    Else
        MsgBox "Tat ca deu thoa dieu kien 1!", vbInformation, "DIEU KIEN 1"
    End If
    If n Then
        Dim Dict2 As Object
        Set Dict2 = CreateObject("Scripting.Dictionary")
        For r = 1 To n
            Dict2(ArrTemp2(r)) = Empty
        Next
        MsgBox "Co " & Dict2.Count & " muc khong thoa dieu kien 2 la:" _
                     & vbLf & Join(Dict2.Keys, vbLf), vbInformation, "DIEU KIEN 2"
    Else
        MsgBox "Tat ca deu thoa dieu kien 2!", vbInformation, "DIEU KIEN 2"
    End If
End Sub
 
Upvote 0
Chép code dưới đây vào file nhé!

Mã:
Sub ThongBao()
    Dim ArrCond, ArrSource
    Dim ArrTemp1(), ArrTemp2()
    Dim m As Long, n As Long, r As Long
    r = Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row
    ArrCond = Sheets("Sheet1").Range("D14:E" & r)
    ArrSource = Sheets("Sheet1").Range("A14:B" & r)
    For r = 1 To UBound(ArrCond)
        If ArrCond(r, 1) = "!!" Then
            m = m + 1
            ReDim Preserve ArrTemp1(1 To m)
            ArrTemp1(m) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
        If ArrCond(r, 2) = "!!" Then
            n = n + 1
            ReDim Preserve ArrTemp2(1 To n)
            ArrTemp2(n) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
    Next
    If m Then
        Dim Dict1 As Object
        Set Dict1 = CreateObject("Scripting.Dictionary")
        For r = 1 To m
            Dict1(ArrTemp1(r)) = Empty
        Next
        MsgBox "Co " & Dict1.Count & " muc khong thoa dieu kien 1 la:" _
                     & vbLf & Join(Dict1.Keys, vbLf), vbInformation, "DIEU KIEN 1"
    Else
        MsgBox "Tat ca deu thoa dieu kien 1!", vbInformation, "DIEU KIEN 1"
    End If
    If n Then
        Dim Dict2 As Object
        Set Dict2 = CreateObject("Scripting.Dictionary")
        For r = 1 To n
            Dict2(ArrTemp2(r)) = Empty
        Next
        MsgBox "Co " & Dict2.Count & " muc khong thoa dieu kien 2 la:" _
                     & vbLf & Join(Dict2.Keys, vbLf), vbInformation, "DIEU KIEN 2"
    Else
        MsgBox "Tat ca deu thoa dieu kien 2!", vbInformation, "DIEU KIEN 2"
    End If
End Sub
em cảm ơn!!
Mà anh có thể gom 2 Msg thành một được ko?
.....................................
MsgBox "Co " & Dict1.Count & " muc khong thoa dieu kien 1 la:" _
& vbLf & Join(Dict1.Keys, vbLf) _
& Dict2.Count & " muc khong thoa dieu kien 2 la:" _
& vbLf & Join(Dict2.Keys, vbLf), vbInformation, "Thông báo"
.....................................
cho nó hiện lên 1 Msgbox thông báo 2 điều kiện!!
Nếu cả 2 Đk không thỏa thì thông báo như trên
Nếu Đk 1 thỏa thì chỉ thông báo Đk 2 và ngược lại
Nếu cả 2 Đk đều thỏa thì thông báo thỏa Đk
...............
e chân thành cảm ơn!!!!!!!!!!!!!
 
Upvote 0
em cảm ơn!!
Mà anh có thể gom 2 Msg thành một được ko?
.....................................
MsgBox "Co " & Dict1.Count & " muc khong thoa dieu kien 1 la:" _
& vbLf & Join(Dict1.Keys, vbLf) _
& Dict2.Count & " muc khong thoa dieu kien 2 la:" _
& vbLf & Join(Dict2.Keys, vbLf), vbInformation, "Thông báo"
.....................................
cho nó hiện lên 1 Msgbox thông báo 2 điều kiện!!
Nếu cả 2 Đk không thỏa thì thông báo như trên
Nếu Đk 1 thỏa thì chỉ thông báo Đk 2 và ngược lại
Nếu cả 2 Đk đều thỏa thì thông báo thỏa Đk
...............
e chân thành cảm ơn!!!!!!!!!!!!!
Thật ra MsgBox nó cũng có hạn trong việc hiển thị, nếu quá số lượng chuỗi nó sẽ trở thành dấu ba chấm (...) vì thế tốt nhất bạn nên cho nó thông báo bằng 2 lần MsgBox sẽ tốt hơn!
 
Upvote 0
Em cám ơn nhiều!!vì e muốn thực hiện nó cùng 1 lúc nên thêm ý vậy.......................................... Mình ko lồng nó vào được hả a?
Thật ra MsgBox nó cũng có hạn trong việc hiển thị, nếu quá số lượng chuỗi nó sẽ trở thành dấu ba chấm (...) vì thế tốt nhất bạn nên cho nó thông báo bằng 2 lần MsgBox sẽ tốt hơn!
..
Vậy chuỗi ở đây có phải là cái này ko a: (hihi)
MsgBox "Co " & Dict1.Count & " muc khong thoa dieu kien 1 la:" _
& vbLf & Join(Dict1.Keys, vbLf) _
& Dict2.Count & " muc khong thoa dieu kien 2 la:" _
& vbLf & Join(Dict2.Keys, vbLf), vbInformation, "Thông báo"
 
Upvote 0
Em cám ơn nhiều!!vì e muốn thực hiện nó cùng 1 lúc nên thêm ý vậy.......................................... Mình ko lồng nó vào được hả a?

..
Vậy chuỗi ở đây có phải là cái này ko a: (hihi)

Ôi, bạn muốn thì tôi "vẽ" cho bạn!

Mã:
Sub ThongBao()
    Dim ArrCond, ArrSource
    Dim ArrTemp1(), ArrTemp2()
    Dim m As Long, n As Long, r As Long
    Dim MsgText1 As String, MsgText2 As String
    r = Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row
    ArrCond = Sheets("Sheet1").Range("D14:E" & r)
    ArrSource = Sheets("Sheet1").Range("A14:B" & r)
    For r = 1 To UBound(ArrCond)
        If ArrCond(r, 1) = "!!" Then
            m = m + 1
            ReDim Preserve ArrTemp1(1 To m)
            ArrTemp1(m) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
        If ArrCond(r, 2) = "!!" Then
            n = n + 1
            ReDim Preserve ArrTemp2(1 To n)
            ArrTemp2(n) = ArrSource(r, 1) & " + " & ArrSource(r, 2)
        End If
    Next
    If m Then
        Dim Dict1 As Object
        Set Dict1 = CreateObject("Scripting.Dictionary")
        For r = 1 To m
            Dict1(ArrTemp1(r)) = Empty
        Next
        MsgText1 = "DIEU KIEN 1:" & vbLf _
                 & "Co " & Dict1.Count _
                 & " muc khong thoa dieu kien:" _
                 & vbLf & Join(Dict1.Keys, vbLf)
    Else
        MsgText1 = "DIEU KIEN 1: Da thoa dieu kien."
    End If
    If n Then
        Dim Dict2 As Object
        Set Dict2 = CreateObject("Scripting.Dictionary")
        For r = 1 To n
            Dict2(ArrTemp2(r)) = Empty
        Next
        MsgText2 = "DIEU KIEN 2:" & vbLf _
                 & "Co " & Dict2.Count _
                 & " muc khong thoa dieu kien:" _
                 & vbLf & Join(Dict2.Keys, vbLf)
    Else
        MsgText2 = "DIEU KIEN 2: Da thoa dieu kien."
    End If
    MsgBox MsgText1 & vbLf & vbLf & MsgText2, vbInformation, "THÔNG BÁO"
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Em chào anh chị, Anh chị xem giúp em, em muốn viết tiếng việt lên cái thông báo nhưng không hiểu sao, có cái hiện đuợc, có cái không hiện được. Anh chị xem sửa giúp em. Em cám ơn ạ.
 
Lần chỉnh sửa cuối:
Upvote 0
Em chào anh chị, Anh chị xem giúp em, em muốn viết tiếng việt lên cái thông báo nhưng không hiểu sao, có cái hiện đuợc, có cái không hiện được. Anh chị xem sửa giúp em. Em cám ơn ạ.
Thử cái này nhé. Tại A1 nhập 1 dòng chữ tiếng việt, sau đó chạy Sub Main
Đảm bảo ngắn gọn, hiệu quả như ý.
PHP:
Sub Main()
DisplayVietnamese [A1].Value
End Sub
Sub DisplayVietnamese(Str As String)
CreateObject("Wscript.shell").PopUp Str, , "Message"
End Sub
 
Upvote 0
Cám ơn anh, anh hiểu sai ý của em. Ý của em là muốn sửa code mà nút button 2 là tiếng việt cảnh báo xóa hết đi, còn nút button 1 em viết được tiếng việt, không hiểu sao nút button 2 không viết được. Mong anh chỉ giáo giúp em
 
Lần chỉnh sửa cuối:
Upvote 0
Cám ơn anh, anh hiểu sai ý của em. Ý của em là muốn sửa code mà nút button 2 là tiếng việt cảnh báo xóa hết đi, còn nút button 1 em viết được tiếng việt, không hiểu sao nút button 2 không viết được. Mong anh chỉ giáo giúp em
Làm vầy đi. Mình quen gọn nhẹ rồi.
PHP:
Sub Main()
Dim chk, Str As String
Str = "B" & ChrW(7841) & "n Mu" & ChrW(7889) & "n L" & ChrW(224) & "m M" _
& ChrW(7899) & "i D" & ChrW(7919) & " Li" & ChrW(7879) & "u?"
DisplayVietnamese Str, chk
If chk = 1 Then
   DisplayVietnamese "B" & ChrW(7841) & "n ch" & ChrW(7885) & "n OK"
   'Code here
Else
   DisplayVietnamese "B" & ChrW(7841) & "n ch" & ChrW(7885) & "n Cancel"
   'Code here
End If
End Sub
Sub DisplayVietnamese(Str As String, Optional KT)
KT = CreateObject("Wscript.shell").PopUp(Str, , "Message", 1)
End Sub
 
Upvote 0
Cám ơn anh, anh hiểu sai ý của em. Ý của em là muốn sửa code mà nút button 2 là tiếng việt cảnh báo xóa hết đi, còn nút button 1 em viết được tiếng việt, không hiểu sao nút button 2 không viết được. Mong anh chỉ giáo giúp em

2 cái nút ấy có code khác nhau mà bạn
Cái hiện được tiếng Việt người ta viết thế này:
Mã:
[COLOR=#ff0000]MsgBoxUni VNI("[/COLOR]Baïn muoán laøm môùi döõ lieäu chöù?[COLOR=#ff0000]")[/COLOR], , [COLOR=#ff0000]VNI("[/COLOR]audit[COLOR=#ff0000]")[/COLOR]
Code của bạn lại viết thế này:
Mã:
MsgBox "Baïn muoán laøm môùi döõ lieäu chöù", vbYesNo, "audit"
Bạn không nhận ra 2 cái đó khác nhau sao?
 
Upvote 0
Dạ em hiểu ah thực tế 2 cái code đó là em đi copy nhặt vào, ý em muốn hỏi các anh xem, cái code không gõ được tiếng việt đó, anh xem có cách nào gõ được tiếng việt giống cái code đầu tiên không a.
 
Lần chỉnh sửa cuối:
Upvote 0
Dạ em hiểu ah thực tế 2 cái code đó là em đi copy nhặt vào, ý em muốn hỏi các anh xem, cái code không gõ được tiếng việt đó, anh xem có cách nào gõ được tiếng việt giống cái code đầu tiên không a.
Thử bài 34 chưa mà sao cứ hỏi hoài thế?
 
Upvote 0
Dạ em hiểu ah thực tế 2 cái code đó là em đi copy nhặt vào, ý em muốn hỏi các anh xem, cái code không gõ được tiếng việt đó, anh xem có cách nào gõ được tiếng việt giống cái code đầu tiên không a.

Thì cứ bắt chước y chang của người ta là được thôi:
Mã:
Sub Button2_Click()
  If [COLOR=#ff0000]MsgBoxUni(VNI([/COLOR]"Baïn muoán laøm môùi döõ lieäu chöù"[COLOR=#ff0000])[/COLOR], vbYesNo, "audit") <> 6 Then Exit Sub
  Sheets("Sheet1").Range("A1:A100").ClearContents
End Sub
 
Upvote 0
Em cám ơn các anh. Em đã làm được rùi.
 
Lần chỉnh sửa cuối:
Upvote 0
Các anh cho em hỏi một chút, khi em muốn xuống xong cho đoạn như thế này không làm được ah. Các anh xem chỉ giúp em.

MsgBoxUni VNI("
Baïn muoán laøm môùi
döõ lieäu chöù?"), , VNI("audit")
 
Lần chỉnh sửa cuối:
Upvote 0
Các anh cho em hỏi một chút, khi em muốn xuống xong cho đoạn như thế này không làm được ah. Các anh xem chỉ giúp em.

MsgBoxUni VNI("
Baïn muoán laøm môùi
döõ lieäu chöù?"), , VNI("audit")

MsgBoxUni VNI("Baïn muoán laøm môùi " & _
"döõ lieäu chöù?"), , VNI("audit")
 
Upvote 0
Cám ơn anh Quảng Hải.
Em làm giống như của anh
MsgBoxUni VNI("Baïn muoán laøm môùi "
 
Lần chỉnh sửa cuối:
Upvote 0
Cám ơn anh Quảng Hải.
Em làm giống như của anh
MsgBoxUni VNI("Baïn muoán laøm môùi " & _
"döõ lieäu chöù?"), , VNI("audit")
Nhưng nó không xuống dòng đoạn thông báo mà vẫn ở trên một dòng ah. Anh xem hộ em với.

Làm vầy:
Mã:
MsgBoxUni(VNI("Baïn muoán laøm môùi" & [COLOR=#ff0000]vbLf [/COLOR]& "döõ lieäu chöù"), vbYesNo, "audit")
vbLf là ký tự xuống dòng đấy
 
Upvote 0
Cám ơn anh nhé. Em làm được rùi ah.
 
Lần chỉnh sửa cuối:
Upvote 0

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

Back
Top Bottom