関数・メソッド

物理キーを反映させる【SendKeysメソッド】

構文

SendKeys String[,Wait]

String・・・・・貼り付ける内容
Wait   ・・・・・【省略可能】True(キー操作完了するまで他の処理を待つ)
              False(キー操作完了するまで他の処理を待たない:規定値) 

特殊なキーコード

キー コード 備考
Shift + 他のキーと組み合わせで使用
Ctrl ^ 他のキーと組み合わせで使用
Alt % 他のキーと組み合わせで使用
BackSpace {BACKSPACE}
{BS}
{BKSP}
Break {BREAK}
CapsLock {CAPSLOCK}
Delete {DELETE} 
{DEL}
Enter ~
Enter(テンキー) {ENTER}
終了 {END}
Esc {ESC}
ヘルプ {HELP}
ホーム {HOME}
NumLock {NUMLOCK}
PageDown {PGDN}
PageUp {PGUP}
PrintScreen {PRTSC} 画面キャプチャは行えない
ScrollLock {SCROLLLOCK}
Tab {TAB}
Insert {INSERT} 
{INS}
F1 {F1}
F2 {F2}
F3 {F3}
F4 {F4}
F5 {F5}
F6 {F6}
F7 {F7}
F8 {F8}
F9 {F9}
F10 {F10}
F11 {F11}
F12 {F12}
F13 {F13}
F14 {F14}
F15 {F15}
F16 {F16}
{UP}
{RIGHT}
{LEFT}
{DOWN}

コードサンプル

Public Sub test()
    '■メモ帳を起動
    Shell "C:\Windows\Notepad.exe", 1
    
    SendKeys "SendKeyの文字列テスト", True
    
    SendKeys "~" 'Enter

'    SendKeys "{ENTER 10}" 'Enterを10回
    
    
'    SendKeys "^(A)", True 'Ctrl + A
    
'    SendKeys "^(C)", True 'Ctrl + C
    
'    SendKeys "^(X)", True 'Ctrl + V
end sub

 

使い方例

  • マクロでIE自動制御している際、ポップアップなどのOKボタンがマクロで押せなく、SendKeysで送る。
  • SeleniumBasicを利用してChrome/Edgeを操作する際、無理やりSendKeysで処理させる。
  • Windowsの郵便番号変換の為、Sendkeysで変換処理を行いたい。

注意点

  • PrintScreen はSendKeysでは使用できません。WindowsAPIで取得する必要があります。
  • 信頼性(安定性)が乏しい為、Sendkeysは多用はお勧めしません。
    基本はマクロ内のコードで完結させるようにして、SendKeysは最終手段と捉えましょう。
  • NumLockのON/OFFでキーが動作しない場合がありますので、注意しましょう。

関連記事

コメント