前提と注意事項
この記事では以下を前提としています。
- 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