前提と注意事項
この記事では以下を前提としています。
- Windows11 Home 22H2 で確認した作業になります。
- AutoHotKey は v2.0 を使用します。
この記事の内容は AutoHotKey v2.0 の公式ドキュメントを参考にしました。AutoHotKey は 2003 年から開発されており、v1.1 と v2.0 があり v2.0 だと書き方自体も変わっています。v2.0 は 2022 年 12 月に正式リリースされたばかりのため、インターネット上の情報のほとんどは v1.1 のものが多く、そのままだと v2.0 で動作しないものも多いため注意が必要です。
この記事のゴール
この記事では、Windows11 で AutoHotKey をインストールし、AutoHotKey のスクリプトを実行することで指定したショートカットキーを実行するところまでをゴールとします。
AutoHotKey のスクリプトを使ってショートカットキーを実行できると何が嬉しいかというと、例えば Windows のタスクスケジューラに AutoHotKey のスクリプトを登録しておくと、指定した時間にショートカットキーを実行することができます。そしてショートカットキーに Power Automate のスクリプトやその他の外部のプログラムの実行を割り当てておくことで、指定した時間に外部のプログラムを実行することができます。
AutoHotkey のインストール
公式サイトからインストーラをダウンロードします。
ダウンロードボタンをクリックすると以下のように v2.0 と v1.1 と選択できるので、最新の v2.0 を選択します。
Download V2.0をクリックすると、AutoHotkey_2.0.11_setup.exeをダウンロードできます。
これをダブルクリックして起動します。以下のようにインストーラが起動します。All usersを選択した状態でInstallをクリックします。
Installをクリックすると以下のように Windows の警告でますが、はいをクリックして進めます。
インストールが完了し、以下の画面が表示されます。
以上で AutoHotKey のインストールが完了です。
AutoHotKey でショートカットキーを実行する
AutoHotKey を使って指定したショートカットキーを実行するためのスクリプトを作成します。以下のように、AutoHotKey の画面にあるNew Scriptをクリックします。
New Scriptをクリックすると以下のように作成するスクリプト名の入力画面が表示されるので、ここではsendShortcutKeyと入力してEditをクリックします。
EmptyとMinimal for V2について
スクリプトの新規作成時にEmptyとMinimal for V2の2つが選択できますが、これら2つの違いは、Minimal for V2を選択して作成したスクリプトには、#Requires AutoHotkey v2.0という1行が挿入され、Emptyでは挿入されないだけの違いです。#Requires AutoHotkey v2.0が 1 行目にある場合は、AutoHotKey のバージョンが 2.0
以上であることが必須となり、それ以前のバージョンの記述をしている場合はエラーが表示されます。
初回では以下のようにスクリプトを編集するためのエディタの選択画面が表示されるので、ここではVisual Studio Codeを選択してOKをクリックします。なお、Visual Studio Codeを Windows にインストールしていない場合は、Notepadや他の好きなエディタを選択してください。
OKをクリックすると以下のように VSCode が開いて、スクリプトを編集することができます。
例えば、以下の内容のスクリプトを記述します。以下は、Windowsキー+rのキーストロークを送信するスクリプトです。すなわち、このスクリプトを実行すると、Windowsキー+rを押したのと同じ効果が得られます。
#Requires AutoHotkey v2.0
Send "#r"AutoHotKey のスクリプトは.ahkという拡張子で保存されます。このスクリプトをダブルクリックするとスクリプトを実行でき、Windowsキー+rのキーストロークが送信されます。Windows ではデフォルトだとWindowsキー+rのショートカットキーに「ファイル名を指定して実行」が割り当てられているので、スクリプトを実行すると「ファイル名を指定して実行」の画面が表示されます。
また、以下のようにすることで、Windowsキー+rで開いた「ファイル名を指定して実行」にcalcという文字列を入力して Enter キーを押して電卓が起動するスクリプトを作成できます。
#Requires AutoHotkey v2.0
Sleep 500
Send "#r" ; Windows + r 実行
Sleep 500
Send "calc" ; 文字列”calc”を送信
Sleep 500
Send "{enter}" ; Enterキーを送信Windows では電卓アプリをcalcというコマンドで起動できるのでそれを利用しています。
上記のスクリプトではSleep 500というコマンドを使っていますが、これは500ミリ秒待つという意味です。Sleepコマンドは、指定したミリ秒だけ待つコマンドです。このコマンドを使うことで、キーストロークを送信する前に電卓アプリが起動するのを待つことができます。
まとめ
この記事で説明したように、AutoHotKey を使うとショートカットキーをスクリプトから実行することができます。これを使うと、Windows のタスクスケジューラと組み合わせて指定した時間にショートカットキーを実行することができます。すなわち、Power Automate Desktop のフローや他の外部のプログラムをタスクスケジューラで定期実行することができます。以下に AutoHotKey とタスクスケジューラを使って Power Automate Desktop のフローをスケジュール実行するための手順をまとめたので必要な方は見てみてください。
📆 AutoHotKeyとタスクスケジューラを使ってPower Automate Desktopとスケジュール実行する
AutoHotKeyとタスクスケジューラを使用してPower Automate Desktopのフローを指定したスケジュールで実行するための手順を解説します。
ritaiz.com