Giúp code thoát excel hiện thông báo

Liên hệ QC

congnguyen88

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
22/7/14
Bài viết
356
Được thích
31
Mình muốn khi thoát file excel thì nó sẽ hiện 1 bảng thông báo " Thoat chuong trình " bảng thông báo gồm 2 nút OK và Cancel
- khi chọn OK thì file đó sẽ lưu và thoát
- nếu chọn Cancel thì tắt bảng thông báo và không làm gì hết
 
Mình muốn khi thoát file excel thì nó sẽ hiện 1 bảng thông báo " Thoat chuong trình " bảng thông báo gồm 2 nút OK và Cancel
- khi chọn OK thì file đó sẽ lưu và thoát
- nếu chọn Cancel thì tắt bảng thông báo và không làm gì hết

đây là sự kiện trọng workbook !
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  msgbox "[I] Mình muốn khi thoát file excel thì nó sẽ hiện 1 bảng thông báo " Thoat chuong trình " bảng thông báo gồm 2 nút OK và Cancel 
 - khi chọn OK thì file đó sẽ lưu và thoát
 - nếu chọn Cancel thì tắt bảng thông báo và không làm gì hết"[/I]

End Sub
 
Upvote 0
đây là sự kiện trọng workbook !
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  msgbox "[I] Mình muốn khi thoát file excel thì nó sẽ hiện 1 bảng thông báo " Thoat chuong trình " bảng thông báo gồm 2 nút OK và Cancel 
 - khi chọn OK thì file đó sẽ lưu và thoát
 - nếu chọn Cancel thì tắt bảng thông báo và không làm gì hết"[/I]

End Sub

Em làm rồi không được. cái của a Thứ nhất là bản Thông báo không có tiếng việt, thư 2 khi nhấn Cancel thì nó lại 1 hiện 1 bảng thông báo mac định của excel là Do you Want ....
 
Upvote 0
đây là sự kiện trọng workbook !
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  msgbox "[I] Mình muốn khi thoát file excel thì nó sẽ hiện 1 bảng thông báo " Thoat chuong trình " bảng thông báo gồm 2 nút OK và Cancel 
 - khi chọn OK thì file đó sẽ lưu và thoát
 - nếu chọn Cancel thì tắt bảng thông báo và không làm gì hết"[/I]

End Sub


ĐẤY CODE CỦA A NEK, KHI BẤM NÚT CANCEL VÂN KHÔNG ĐƯỢC NÓ CỨ HIỆN BẢNG THÔNG BÁO MẶC ĐỊNH CỦA EXCEL DO YOU WANT ....

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If MsgBox("thoat chuongtrinh", 4) = 6 Then
ActiveWorkbook.Save
End If
End Sub
 
Upvote 0
Em tìm kiếm trên Google giúp bác nhé.! Bác xem có đúng ý yêu cầu của mình ko?
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next

Dim ans As Long
With Me
If Not .Saved Then
ans = MsgBox("'" & Me.Name & "'????????", vbExclamation + vbYesNoCancel)​
If ans = vbYes Then
Me.Save​
ElseIf ans = vbNo Then
Me.Saved = True​
Else
Cancel = True​
End If​
End If​
End With​
End Sub
 
Upvote 0
Em tìm kiếm trên Google giúp bác nhé.! Bác xem có đúng ý yêu cầu của mình ko?
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next

Dim ans As Long
With Me
If Not .Saved Then
ans = MsgBox("'" & Me.Name & "'????????", vbExclamation + vbYesNoCancel)​
If ans = vbYes Then
Me.Save​
ElseIf ans = vbNo Then
Me.Saved = True​
Else
Cancel = True​
End If​
End If​
End With​
End Sub
Chơi vậy đi cho nó gọn gàng sạch sẻ nha --=0|||||
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False
If MsgBox("Luu Chon Yes ... Ko Chon No ...Het Phim", 4) = 6 Then
    ActiveWorkbook.Save
ElseIf Cancel = False Then
    Me.Saved = True
    Application.Quit
End If
Application.DisplayAlerts = True
End Sub
 
Upvote 0
Sao không phải là thisworkbook.close nhỉ, nó quit cả excel mất hok
 
Upvote 0
Gợi ý cho chủ thớt chơi vầy mới vui nè
khi đóng file Excel có 3 lựa chon:
1/ Là lưu

2/ Là không lưu

3/ Là nếu không chọn 2 mục trên thì sau 2 giây nó cũng thoát luôn không lưu.... hết phim

By by ... Be Be ...không chơi ở đây nữa chán rồi ....Run --=0--=0|||||
 
Lần chỉnh sửa cuối:
Upvote 0
Gợi ý mà không hướng dẫn ah :(
Có khi góp ý được nhưng không biết làm rồi sao hướng dẫn hả bác. Cũng giống như bác là người sử dụng phần mềm nhưng bác không biết lập trình thì làm sao bác hướng dẫn được, nhưng khi sử dụng lại thấy những cái dở, cái cần khắc phục nhưng không biết cách sửa thì góp ý thôi bác ơi. Tôi nói đây là thực tế nhiều người mắc phải chứ không có ý nói bác kieumanh không biết cách làm. --=0 --=0 --=0 --=0 --=0
 
Upvote 0
Cũng với 8 dòng code như Bài 6 ấy thôi mà ...tại muốn để chủ thớt suy nghĩ một tí thôi mà ....
Chuyện nhỏ như con thỏ ... chạy trên bãi cỏ ... gặp hố nhỏ ....Toi đời con thỏ ấy mà --=0

À quên Nếu viết Ăn Gian Với Mạnh chỉ có thể là 1 dòng code .... Hahaha ..Bạn giaiphap thấy tình hình sao
 
Lần chỉnh sửa cuối:
Upvote 0
Em tìm kiếm trên Google giúp bác nhé.! Bác xem có đúng ý yêu cầu của mình ko?
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next

Dim ans As Long
With Me
If Not .Saved Then
ans = MsgBox("'" & Me.Name & "'????????", vbExclamation + vbYesNoCancel)​
If ans = vbYes Then
Me.Save​
ElseIf ans = vbNo Then
Me.Saved = True​
Else
Cancel = True​
End If​
End If​
End With​
End Sub

Chưa đúng nha bạn. Mình muốn 2 nút OK và Cacnel thôi. mình muốn người dùng 1 là Lưu và thoát ra luôn, 2 là nếu lở tay bấm tắt thì bấm cancel để tẮT BẢNG THÔNG BÁO ĐÓ THÔI
 
Upvote 0
Chơi vậy đi cho nó gọn gàng sạch sẻ nha --=0|||||
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False
If MsgBox("Luu Chon Yes ... Ko Chon No ...Het Phim", 4) = 6 Then
    ActiveWorkbook.Save
ElseIf Cancel = False Then
    Me.Saved = True
    Application.Quit
End If
Application.DisplayAlerts = True
End Sub

CHưa đúng bạn ơi, mình đã nói rất rõ là khi thoát chương trình hiện 1 bảng thông báo có 2 nút OK và Cancel thôi, Chọn Ok là Lưu và thoát ra luôn, Chọn Cancel là tắt các bảng thông báo đó.
 
Lần chỉnh sửa cuối:
Upvote 0
CHưa đúng bạn ơi, mình đã nói rất rõ là khi thoát chương trình hiện 1 bảng thông báo có 2 nút OK và Cancel thôi, Chọn Ok là Lưu và thoát ra luôn, Chọn Cancel là tắt các bảng thông báo đó.
Tạo 1 userform có 2 nút Ok và Cancel.
code trong workbook
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
UserForm1.Show
Cancel = True
End Sub
code cho form
Mã:
Private Sub CommandButton1_Click()
ActiveWorkbook.Save
End
End Sub


Private Sub CommandButton2_Click()
Unload UserForm1
End Sub
 
Upvote 0
Bác kieumanh trổ tài cho tôi học hỏi với. Với tôi thì phải đến cỡ 5 dòng code mới giải quyết được.
Như Bài #12 Mình nói Nếu Viết Ăn gian....1 dòng code
Tài cáng gì đâu Bạn ngồi không Buồn Buồn quậy chơi để tiêu sầu xả xì chét thôi mà ...--=0--=0

Nếu viết ăn gian thì vầy:
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Msg: Msg = CreateObject("WScript.Shell").PopUp("Close Sau 2 Giay", 2, "Thông Báo", 68): If Msg = vbYes Then ThisWorkbook.Save Else Me.Saved = True: Application.Quit
End Sub

Còn nếu viết nghiên túc thì chỉ cần Vầy:
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Msg: Msg = CreateObject("WScript.Shell").PopUp("Excel Thoát Sau 2 Giây", 2, "Thông Báo", 68)
If Msg = vbYes Then ThisWorkbook.Save Else Me.Saved = True: Application.Quit
End Sub

Hay Viết màu mè văn cao thì vầy:
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False
    Dim TB$, Msg&
    TB = "L" & ChrW(432) & "u Th" & ChrW(236) & " Ch" & ChrW(7885) _
    & "n Yes ... Kh" & ChrW(244) & "ng Th" & ChrW(236) & " Chon No"
    Msg = CreateObject("WScript.Shell").PopUp(TB, 2, "Thông Báo", 4)
    If Msg = vbYes Then
        ThisWorkbook.Save
    Else
        Me.Saved = True
        Application.Quit
    End If
Application.DisplayAlerts = True
End Sub

Với code trên Bạn có thể thêm tiếng việt Tùy Thích: "Excel Thoát Sau 2 Giây"

Tóm lại lạc đề hết rồi có điều Bạn hỏi thì Mạnh trả lời vậy ...Còn chủ thớt dương súng lên trời xong bắn vào ... đít Thì chỉ có tây mới hiểu ....hết phim ...Run ,,,,,,,
 
Lần chỉnh sửa cuối:
Upvote 0
Như Bài #12 Mình nói Nếu Viết Ăn gian....1 dòng code
Tài cáng gì đâu Bạn ngồi không Buồn Buồn quậy chơi để tiêu sầu xả xì chét thôi mà ...--=0--=0

Nếu viết ăn gian thì vầy:
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Msg: Msg = CreateObject("WScript.Shell").PopUp("Close Sau 2 Giay", 2, "Thông Báo", 68): If Msg = vbYes Then ThisWorkbook.Save Else Me.Saved = True: Application.Quit
End Sub

Còn nếu viết nghiên túc thì chỉ cần Vầy:
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Msg: Msg = CreateObject("WScript.Shell").PopUp("Excel Thoát Sau 2 Giây", 2, "Thông Báo", 68)
If Msg = vbYes Then ThisWorkbook.Save Else Me.Saved = True: Application.Quit
End Sub

Hay Viết màu mè văn cao thì vầy:
Mã:
Private Sub Workbook_BeforeClose4(Cancel As Boolean)
Application.DisplayAlerts = False
    Dim TB$, Msg&
    TB = "L" & ChrW(432) & "u Th" & ChrW(236) & " Ch" & ChrW(7885) _
    & "n Yes ... Kh" & ChrW(244) & "ng Th" & ChrW(236) & " Chon No"
    Msg = CreateObject("WScript.Shell").PopUp(TB, 2, "Thông Báo", 4)
    If Msg = vbYes Then
        ThisWorkbook.Save
    Else
        Me.Saved = True
        Application.Quit
    End If
Application.DisplayAlerts = True
End Sub

Với code trên Bạn có thể thêm tiếng việt Tùy Thích: "Excel Thoát Sau 2 Giây"

Tóm lại lạc đề hết rồi có điều Bạn hỏi thì Mạnh trả lời vậy ...Còn chủ thớt dương súng lên trời xong bắn vào ... đít Thì chỉ có tây mới hiểu ....hết phim ...Run ,,,,,,,


Dủ sao mình cũng cảm ơn bạn trả lời giúp mình nha. mình cũng nói nghiêm túc bạn đừng buồn nha, Mình đã ghi rất rõ là khi thoát ra hiện 1 cái bảng thông báo và chỉ có 2 lựa chọn thôi là OK và Cancel
- Chọn OK là Lưu và thoát ra luôn
- CHọn Cancel là tắt các bảng thông báo đó đi ( nếu lỡ tay )

ý mình muốn là khi thoát lúc nào nó cũng lưu lại, có điều nếu lở tay bấm thoát thi bấm nút Cancel đở bỏ qua. Vậy mà mình nói 1 đường bạn làm 1 nẻo, bạn làm nút NO là thoát ra nó không lưu gì cả
 
Upvote 0
Tạo 1 userform có 2 nút Ok và Cancel.
code trong workbook
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
UserForm1.Show
Cancel = True
End Sub
code cho form
Mã:
Private Sub CommandButton1_Click()
ActiveWorkbook.Save
End
End Sub


Private Sub CommandButton2_Click()
Unload UserForm1
End Sub

Thank Bạn . bạn viết Code quá chuẩn, quá đúng theo ý mình
 
Upvote 0
Dủ sao mình cũng cảm ơn bạn trả lời giúp mình nha. mình cũng nói nghiêm túc bạn đừng buồn nha, Mình đã ghi rất rõ là khi thoát ra hiện 1 cái bảng thông báo và chỉ có 2 lựa chọn thôi là OK và Cancel
- Chọn OK là Lưu và thoát ra luôn
- CHọn Cancel là tắt các bảng thông báo đó đi ( nếu lỡ tay )

ý mình muốn là khi thoát lúc nào nó cũng lưu lại, có điều nếu lở tay bấm thoát thi bấm nút Cancel đở bỏ qua. Vậy mà mình nói 1 đường bạn làm 1 nẻo, bạn làm nút NO là thoát ra nó không lưu gì cả

Đã không biết, không hiểu....Trình bày thì vòng vo...nên người giúp không hiểu ất giáp...thì ắc là khi giúp cũng bất trắc...

Họ đã có lòng giúp...từ đầu chí cuối không thấy lấy lời cảm ơn của bạn mà còn...

Hỏi bài và thái độ kiểu bạn thì đừng mơ có lần sau họ sẽ giúp bạn...Không tin bạn cứ chờ xem!............+-+-+-+
 
Upvote 0
Web KT
Back
Top Bottom