Giúp mình cách thoát khỏi hộp msgbox khi chạy code

  • Thread starter Thread starter qtm1987
  • Ngày gửi Ngày gửi
Liên hệ QC

qtm1987

Thành viên thường trực
Tham gia
15/9/09
Bài viết
340
Được thích
244
Nghề nghiệp
Kế toán tổng hợp
Code mình viết thế này và khi chạy code thì không thể thoát khỏi hộp msgbox. Có cách nào để dừng code đang chạy khi không muốn xem msgbox nữa hok mọi người?
PHP:
Sub thongbao()
Dim i As Long, sArray, arr As String
With Sheet1
sArray = .Range(.[A2], .[a51]).Resize(, 2).Value
For i = 1 To UBound(sArray, 1)
    If sArray(i, 2) = "" Then
        .Range("B" & i + 1).Select
        MsgBox "Vui long nhap vao ngay chung tu tai o B" & i + 1, , "Thong bao"
    End If
Next
End With
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Code mình viết thế này và khi chạy code thì không thể thoát khỏi hộp msgbox. Có cách nào để dừng code đang chạy khi không muốn xem msgbox nữa hok mọi người?
PHP:
Sub thongbao()
Dim i As Long, sArray, arr As String
With Sheet1
sArray = .Range(.[A2], .[a51]).Resize(, 2).Value
'redim arr =
For i = 1 To UBound(sArray, 1)
    If sArray(i, 2) = "" Then
        .Range("B" & i + 1).Select
        MsgBox "Vui long nhap vao ngay chung tu tai o B" & i + 1, , "Thong bao"
    End If
Next
End With
End Sub
Đọc lại kỹ bạn vẫn có thể dùng Exit sub hoặc Exit For sau MsgBox
 
Lần chỉnh sửa cuối:
Upvote 0
Đọc lại kỹ bạn vẫn có thể dùng Exit sub hoặc Exit For sau MsgBox
nếu mình thêm vbyesno vào hộp msgbox
PHP:
MsgBox "Vui long nhap vao ngay chung tu tai o B" & i + 1, vbYesNo, "Thong bao"
thì sẽ hiện thêm 2 nút Yes/ No. Có cách nào gắn vào nút No lệnh Exit Sub để khi ấn vào No thì mới thoát ra khỏi hộp thông báo không nhỉ.
 
Upvote 0
nếu mình thêm vbyesno vào hộp msgbox
PHP:
MsgBox "Vui long nhap vao ngay chung tu tai o B" & i + 1, vbYesNo, "Thong bao"
thì sẽ hiện thêm 2 nút Yes/ No. Có cách nào gắn vào nút No lệnh Exit Sub để khi ấn vào No thì mới thoát ra khỏi hộp thông báo không nhỉ.

Đương nhiên được
PHP:
Sub thongbao()
  Dim i As Long, sArray, arr As String, Msg As Long
  With Sheet1
    sArray = .Range(.[A2], .[a51]).Resize(, 2).Value
    For i = 1 To UBound(sArray, 1)
      If sArray(i, 2) = "" Then
        .Range("B" & i + 1).Select
        Msg = MsgBox("Vui long nhap vao ngay chung tu tai o B" & i + 1, vbYesNo, "Thong bao")
        If Msg = vbNo Then Exit Sub
      End If
    Next
  End With
End Sub
 
Upvote 0
hj. cám ơn anh Ndu. cách này thật đúng ý em.
 
Upvote 0
Có cách nào message box vẫn hiện nhưng code vẫn chạy tiếp. Tất nhiên nếu dùng form thì không nói làm gì :)
 
Upvote 0
Có cách nào message box vẫn hiện nhưng code vẫn chạy tiếp. Tất nhiên nếu dùng form thì không nói làm gì :)



Mình thấy bài này có thể, http://www.giaiphapexcel.com/forum/showthread.php?44585-Hộp-thông-báo-tự-động-đóng-lại&p=289044#post289044

Ta cải tiến 1 chút

Mã:
Option Explicit
Sub Msg(Tb As String)
Dim objShell As Object
Set objShell = CreateObject("Wscript.Shell")
objShell.Popup Tb, 1, "THONG BAO TU DONG LAI"
Set objShell = Nothing
End Sub
'=====================================
Private Sub CommandButton2_Click()
Dim i
For i = 1 To 10

'Su ly cai gi tuy ban

Msg "Dang su ly lam " & i & Chr(10) & "Xin chao!"
Next
End Sub
 
Upvote 0
Web KT

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

Back
Top Bottom