Cho em hỏi về hộp thoại

Liên hệ QC

namkpac

Thành viên thường trực
Tham gia
25/11/08
Bài viết
279
Được thích
9
Anh chị nào cho em hỏi với: với loại hộp thoại này thì em biết rồi
Msg ("bạn có muốn làm tiếp hay không?", vbQuestion + vbYesNo, "Thông báo")
Còn nếu muốn hiện câu hỏi là: bạn có muốn lưu mới không hay bạn lưu sửa hay thoát thì cú pháp như thế nào ạ?
Nếu theo thế này thì có thể thay YesNoCancel thành MoiSuaThoat như ở dưới được không ạ?
(Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbYesNoCancel + vbQuestion, "Chuong trinh tinh lun"))
(Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbMoiSuaThoat+ vbQuestion, "Chuong trinh tinh lun"))
Em đọc trong tài liệu thì lại ko thấy nói đến vì nếu chọn kiểu yesnocancel thì với mỗi hình thức trả lời thì mình cóthể dùng if…elseif còn cái em hỏi có làm được không? Em chạy thử thì nó ra thế này: Bạn có muốn làm tiếp không thì chỉ có nút ok

Sub Nhangui()
Dim Truonghop As Integer
Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbMoiSuaThoat + vbQuestion, "Chuong trinh tinh lun")
If Truonghop = vbMoi Then
MsgBox "Ban vua chon nut Yes.", vbInformation
ElseIf Truonghop = vbSua Then
MsgBox "Ban vua chon nut No.", vbCritical
ElseIf Truonghop = vbThoat Then
MsgBox "Ban vua bam nut Cancel.", vbExclamation
End If
End Sub
Nguon: giaiphapexcel:http://www.giaiphapexcel.com/forum/...-về-Visual-Basic-for-Applications-(VBA)/page2
 
Lần chỉnh sửa cuối:
Anh chị nào cho em hỏi với: với loại hộp thoại này thì em biết rồi
Msg ("bạn có muốn làm tiếp hay không?", vbQuestion + vbYesNo, "Thông báo")
Còn nếu muốn hiện câu hỏi là: bạn có muốn lưu mới không hay bạn lưu sửa hay thoát thì cú pháp như thế nào ạ?
Nếu theo thế này thì có thể thay YesNoCancel thành MoiSuaThoat như ở dưới được không ạ?
(Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbYesNoCancel + vbQuestion, "Chuong trinh tinh lun"))
(Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbMoiSuaThoat+ vbQuestion, "Chuong trinh tinh lun"))
Em đọc trong tài liệu thì lại ko thấy nói đến vì nếu chọn kiểu yesnocancel thì với mỗi hình thức trả lời thì mình cóthể dùng if…elseif còn cái em hỏi có làm được không? Em chạy thử thì nó ra thế này: Bạn có muốn làm tiếp không thì chỉ có nút ok

Sub Nhangui()
Dim Truonghop As Integer
Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbMoiSuaThoat + vbQuestion, "Chuong trinh tinh lun")
If Truonghop = vbMoi Then
MsgBox "Ban vua chon nut Yes.", vbInformation
ElseIf Truonghop = vbSua Then
MsgBox "Ban vua chon nut No.", vbCritical
ElseIf Truonghop = vbThoat Then
MsgBox "Ban vua bam nut Cancel.", vbExclamation
End If
End Sub
Nguon: giaiphapexcel:http://www.giaiphapexcel.com/forum/...-về-Visual-Basic-for-Applications-(VBA)/page2
chương trình đâu có hiều vbMoiSuaThoat là gì đâu.
Nếu bạn muốn việt hóa thì phải tự xây dựng 1 hộp thoại của riêng bạn thôi
 
Upvote 0
Anh chị nào cho em hỏi với: với loại hộp thoại này thì em biết rồi
Msg ("bạn có muốn làm tiếp hay không?", vbQuestion + vbYesNo, "Thông báo")
Còn nếu muốn hiện câu hỏi là: bạn có muốn lưu mới không hay bạn lưu sửa hay thoát thì cú pháp như thế nào ạ?
Nếu theo thế này thì có thể thay YesNoCancel thành MoiSuaThoat như ở dưới được không ạ?
(Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbYesNoCancel + vbQuestion, "Chuong trinh tinh lun"))
(Truonghop = MsgBox("Ban co muon thoat khoi chuong trinh khong", vbMoiSuaThoat+ vbQuestion, "Chuong trinh tinh lun"))
Em đọc trong tài liệu thì lại ko thấy nói đến vì nếu chọn kiểu yesnocancel thì với mỗi hình thức trả lời thì mình cóthể dùng if…elseif còn cái em hỏi có làm được không? Em chạy thử thì nó ra thế này: Bạn có muốn làm tiếp không thì chỉ có nút ok
Cái bạn đang hỏi là phần buttons của MsgBox .
mgb.jpg

PHP:
Buttons của MsgBox gồm:
vbOKOnly
vbOKCancel
vbAbortRetryIgnore
vbYesNoCancel
vbYesNo
vbRetryCancel
vbCritical
vbQuestion
vbExclamation
vbInformation
vbDefaultButton1
vbDefaultButton2
vbDefaultButton3
vbDefaultButton4
vbApplicationModal
vbSystemModal
vbMsgBoxHelpButton
VbMsgBoxSetForeground
vbMsgBoxRight
vbMsgBoxRtlReading

Nếu muốn sửa vbYesNoCancel thành vbMoiSuaThoat thì chắc phải viết lại function Msgbox.
Tôi chỉ giải thích như trên thôi, chứ cái này thì tôi không biết làm.
p/s: Yes / No / Cancel cũng được chứ. Tôi thấy hay hơn chọn phương án chữ không dấu "MoiSuaThoat".
 
Upvote 0
Upvote 0
Đơn giản nhất người ta vẽ lên cái UserForm ấy. Đừng nói là Việt hóa, muốn tô màu, chữ đậm... vân vân gì mà chả được. Lại đơn giản nữa
Ý Anh là dùng cái Form làm gỉa cái Msgbox Xong trên đó muốn vẻ gì thì vẻ....quả là gợi ý hay...
 
Upvote 0
Lần chỉnh sửa cuối:
Upvote 0
nhà bác học kieu manh ơi cái này dùng làm gì vậy ?
 
Upvote 0
Ý Anh là dùng cái Form làm gỉa cái Msgbox Xong trên đó muốn vẻ gì thì vẻ....quả là gợi ý hay...

Đúng vậy! Dùng UserForm đơn giản nhất, khỏi code rườm rà.. nhất là đụng đến API sẽ có máy chạy được, máy không.
Ngoài UserForm ra, có thể dùng DialogSheet, cũng đơn giản không kém
 
Upvote 0
Đúng vậy! Dùng UserForm đơn giản nhất, khỏi code rườm rà.. nhất là đụng đến API sẽ có máy chạy được, máy không.
Ngoài UserForm ra, có thể dùng DialogSheet, cũng đơn giản không kém
cách đây khoãng gần một năm Em có tải một File của Anh về coi thấy có cái Hepl hay mà hồi đó em tìm hoài không thấy nó nằm ở đâu.... giờ thì mới thấy ...Áp dụng cái đó mới hay ....
Link File
http://www.giaiphapexcel.com/forum/showthread.php?84992-Code-save-as-sheet-hiện-hành/page2
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom