スポンサーリンク
Excel 2010 から Excel 2013 に移行して、ショートカットキーの挙動がおかしいことに気が付きました。その原因について。
スポンサーリンク
原因
上手く動かなかったのは、Excel専用のAutoHotkeyの設定が上手く動作していなかったためです。Excelでだけ、ショートカットキーを使うために通常のAutoHotkeyの設定を無効化する設定を書いていたのですが、それがExcel 2010には適用されるものの、Excel 2013には適用されていませんでした。
というのも、Excel 2010でのみ有効になる設定を、次の文の直後に書いていました。
#IfWinActive Microsoft Excel ahk_class XLMAIN
しかし、これがExcel 2013には当てはまりませんでした。なぜかというと、Excel 2010では「ファイル名 - Microsoft Excel」だったウィンドウタイトルが、Excel 2013では「ファイル名 - Excel」となっており、「Microsoft」の表示が消えていたのです。
解決策
というわけで、次のように変更したらちゃんと動作しました。
#IfWinActive Excel ahk_class XLMAIN
ウィンドウのクラス名(XLMAIN)は変わっていなかったので、そこは変更する必要がありませんでした。
おまけ:ユーザーアカウント制御の無効化はOffice 2013でも必要
ExcelやOneNoteなどでは、UAC(ユーザーアカウント制御)が有効の場合、AutoHotkeyから送信した一部のキーを受け付けてもらえない問題がありましたが、Office 2013でも、それは変わっていないようです。また、SendPlayでないとダメ、というのも変わっていないようでした。
スポンサーリンク
スポンサーリンク