Vì sao khi chạy Marco bằng .OnKey thì không dùng SendKeys được?

Liên hệ QC

ptlong04x1

Thành viên tích cực
Tham gia
15/10/08
Bài viết
1,031
Được thích
1,531
Nghề nghiệp
Kỹ sư xây dựng
Mình làm file này trên WinXP, bạn nào dùng XP xin test hộ.

PHP:
Private Sub Workbook_Open()
    Application.OnKey "^+w", "DoMin"
    Application.OnKey "^+s", "DanhBai"
    Application.OnKey "^+p", "PinBall"
End Sub
PHP:
Sub DoMin()
    Dim ChayDoMin

    Application.DisplayAlerts = False
    ChayDoMin = Shell("winmine.exe", 1)
    AppActivate ChayDoMin
    SendKeys "%gc", True
End Sub

Sub DanhBai()
    Dim ChayDanhBai

    Application.DisplayAlerts = False
    ChayDanhBai = Shell("sol.exe", 1)
    SendKeys "%gc", True
End Sub

Sub PinBall()
    Dim ChayPinBall

    Application.DisplayAlerts = False
    ChayPinBall = Shell("C:\Program Files\Windows NT\Pinball\PINBALL.EXE", 1)
    SendKeys "%gh", True
End Sub
Nếu chạy trực tiếp các Sub bằng cách click vào Command Button thì có thể SendKeys Alt - G - C, còn nếu chạy Sub bằng .OnKeys thì SendKeys bị vô hiệu hoá, xin mọi người cho biết nguyên nhân và cách khắc phục. Cảm ơn!
 

File đính kèm

Web KT

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

Back
Top Bottom