AutoTotKey のHotstring で、当年の指定日の年月日(曜日)を素早く入力する

前回、今日の年月日をHotstring で素早く入力する方法を実装した。今度は、指定日の年月日を素早く入力する方法を実装する。Excel のセルに「月/日」を入力すると暦と認識される機能の応用だ。

方法

AutoHotKey のHotstring を使う

Hotstring とは

ユーザーが特定の文字列をタイプしたときに、アクションを発生させられる機能

スクリプト

my_hotstring.ahk

使い方

普段使いするなら、このmy_hotstring.ahk をランチャーに入れて実行するか、Windows のスタートアップで起動時に実行されるようにする

“t[[” と入力すると、指定日入力フォームが表示される

指定日を半角英数4ケタ”0101″ のように入力してエンターキーを押すと、”2020年1月1日 (水)” のように出力される

解説

  • 入力フォーム作成に、Gui,Add,Edit を使っている
  • フォームに入力した内容は、TargetDate に代入される
  • Gui,Add,Button で処理が実行されたらInsDateExec 関数を実行する
  • 今年の西暦年をYearString に取得
  • 入力された日付とYearString を使って、指定日の曜日を取得
  • 入力された日付とYearString を使って、年月日を取得
  • 指定日の曜日を、get_dowstr() を使って、「(月)」の形式に変換

参考

AutoHotkey の Hotstring で曜日文字列を素早く入力する
http://stakiran.hatenablog.com/entry/2018/01/19/221444