2012-01-24 51 views
7

Tôi biết tôi có thể sử dụng Ctrl + G để di chuyển con trỏ đến cửa sổ ngay lập tức. Có phím tắt khác để di chuyển con trỏ về mã không?Phím tắt để di chuyển từ VBA Cửa sổ ngay lập tức sang cửa sổ mã

+0

Câu trả lời của GSerg và Alex K đều chính xác. Tôi kết hợp câu trả lời của Alex với một kịch bản Autohotkey để chuyển lệnh 'Ctrl + G' thành một" chuyển đổi "chuyển đổi qua lại giữa mã và cửa sổ ngay lập tức. Tôi đã đăng mã Autohotkey dưới dạng câu trả lời riêng biệt bên dưới. – mwolfe02

Trả lời

5

Alt +W,

+0

Điều này làm việc cho Visual Studio, là tốt. –

9

Giả sử VBA trong Office; F7.

+0

Tác vụ này trong hầu hết các trường hợp, nhưng nếu bạn đang xem biểu mẫu người dùng và nhấn Ctrl + G, nhấn F7 sẽ chuyển bạn đến mô-đun mã phía sau biểu mẫu chứ không phải quay lại biểu mẫu. – JimmyPena

+2

... đó là những gì OP yêu cầu. –

+0

@ Jean-FrançoisCorbett: thực sự. – mwolfe02

3

Đối với bất cứ ai ngoài kia sử dụng AutoHotkey, tôi kết hợp giải pháp Alex K vào kịch bản Autohotkey tôi chạy bất cứ khi nào tôi đăng nhập vào:

SendMode Input ; Recommended for new scripts due to its superior speed and reliability 

;*** ;VBA IDE 
#IfWinActive ahk_class wndclass_desked_gsk ;only execute if VBA IDE is active win 
^g:: ; Ctl + g: Toggle immediate window 
    WinGet, WindowUniqueID, ID, A 
    ControlGetFocus, ControlID, ahk_id %WindowUniqueID% 
    ControlGet, ControlHwnd, Hwnd,, %ControlID%, ahk_id %WindowUniqueID% 
    ControlTextSize = 16 
    VarSetCapacity(ControlText, ControlTextSize) 
    SendMessage, 0xD, ControlTextSize, &ControlText,, ahk_id %ControlHWND% ; 0xD is WM_GETTEXT. 
    If (ControlText="Immediate") 
     Send {F7} 
    Else 
     Send ^g 
    Return 
#IfWinActive 

Thứ nhất, kịch bản tạo ra một bối cảnh nhạy cảm CTL + G phím nóng yêu cầu IDE VBA là cửa sổ hiện hoạt (#IfWinActive ahk_class wndclass_desked_gsk).

Khi bạn nhấn Ctl + G, tập lệnh sẽ kiểm tra xem tiêu đề của điều khiển hiện tại có "Ngay lập tức" hay không. Nếu đúng vậy, nó sẽ gửi một số F7 gửi tiêu điểm trở lại mã. Nếu không, nó sẽ phát hành lại Ctl + G.

Các vấn đề liên quan