Sendkyesが使えないんだ!
なんかいろいろあって使えないらしい。
とは言え、使いたい。
グーグル先生、おしえて!
デデデン♪
AZ_Mouse's HP♪さんの小技集から
http://www.geocities.co.jp/SiliconValley-PaloAlto/9180/exsendkeys.html
最終更新日2000年だって!動作確認もWin95/WinNT/AC97ですよ。
でも大丈夫、win10+office2013で動いてるし。
2013言ってる時点で古いしw
細かな説明は引用元様を御覧ください。
Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)Public Sub gSub_ExSendKeys(uKeyCode_1 As Integer, Optional uKeyCode_2 As Variant)
If IsMissing(uKeyCode_2) Then
Call keybd_event(CByte(uKeyCode_1), 0, 0, 0)
Call keybd_event(CByte(uKeyCode_1), 0, 2, 0)
Else
Call keybd_event(CByte(uKeyCode_1), 0, 0, 0)
Call keybd_event(CByte(uKeyCode_2), 0, 0, 0)
Call keybd_event(CByte(uKeyCode_2), 0, 2, 0)
Call keybd_event(CByte(uKeyCode_1), 0, 2, 0)
End If
End Sub
APIはさっぱりなので、書いてあるまま使います。
聞かないでください。
Outlookの仕訳ルールの実行をするにあたり、手動で一々実行するのが面倒なので、下記を作成しクイックアクセスツールバーに登録しました。
Sub 仕分け()
Call gSub_ExSendKeys(vbKeyMenu)
Call gSub_ExSendKeys(vbKeyControl, vbKeyO)
Call gSub_ExSendKeys(vbKeyR)
Call gSub_ExSendKeys(vbKeyR)
Call gSub_ExSendKeys(vbKeyMenu, vbKeyE)
Call gSub_ExSendKeys(vbKeyMenu, vbKeyO)
End Sub
フォルダーー仕訳ルールの実行ールール全選択ー実行 です。
閉じるまでやりたかったけどうまくいかなかったのはご愛嬌。
KyeCode定数は、マイクロソフトのこちらを参照してください。
ExcelでUserFormのTextBoxのカーソルを右に動かしたかったので、探して見たのが最初でした。
キーコードが使えると捗るよ!