Tôi muốn sử dụng VBA trong Excel để kiểm tra xem quy trình WINWORD.EXE hiện có đang chạy hay không.
Trả lời:
Xin chào KCKay,
Dưới đây là ví dụ giám sát thời gian thực của ứng dụng Word, tiện lợi hơn so với lời nhắc của hộp thoại pop-up.
Macro để tham khảo:
-------------------
Tùy chọn rõ ràng
Công khai khi chạy theo ngày
'###############################
'Kiểm tra xem phiên bản Word có đang chạy không.
'###############################
Kiểm tra phụWordAppProc()
Dim wdApp làm đối tượng
'Khi xảy ra lỗi, hãy xem nhãn"errHandler".
Khi xảy ra lỗi GoTo errHandler
'Lấy phiên bản Word hiện tại。
Đặt wdApp = GetObject(, "Word.Application")
'╱*Mở hộp thông báo nếu không có lỗi.*╱
Nếu Err = 0 thì Application.Caption = "Ứng dụng Word đang chạy"
'MsgBox "Ứng dụng Word đang chạy", vbExclaim, "Mẹo"
Gọi EnableWordAppChecker
Thoát phụ
errHandler:
Application.Caption = "Ứng dụng Word hiện không chạy"
'MsgBox "Ứng dụng Word hiện không chạy", vbExclaim, "Mẹo"
Gọi EnableWordAppChecker
Kết thúc phụ
'#######################################
'Kiểm tra ứng dụng Word mỗi giây một lần.
'#######################################
Sub EnableWordAppChecker()
WhenRun = Now + TimeValue("00:00:01")
Application.OnTime khiRun, "CheckWordAppProc"
Kết thúc phụ
'#######################################
'Dừng kiểm tra xem ứng dụng Word có đang chạy hay không.
'#######################################
Phụ Vô hiệu hóaWordAppChecker()
Khi xảy ra lỗi Tiếp tục tiếp theo
Ứng dụng.Caption = ""
Application.OnTime whenRun, "CheckWordAppProc", , Sai
Kết thúc phụ
Vui lòng chạy macro 'EnableWordAppChecker' để kiểm tra xem ứng dụng Word có đang chạy hay không. Nếu bạn muốn dừng giám sát thời gian thực, hãy chạy macro 'DisableWordAppChecker'.
Comments
Post a Comment