📌

Excel のショートカットを Autohotkey のメニューから呼び出す

2021/01/11に公開

Excel作業効率を上げるキーコンビネーション | Think Twice を見て、便利そうだけど覚えられないなと思ったので、Autohotkey でメニューを表示して、そこから呼び出せるようにしてみた。
Autohotkey でメニューを使ったことがなかったような気がするので、そちらのお試しもかねて。
参考: 誰かの役に立つかもしれない実験メモ ポップアップメニューは別AHKにする方が便利

これを fenrir のインスタントコマンドに ,x で登録して呼び出してみる。
Excel にフォーカスが当たっている状態で C-Space , x r a で行が追加される。(C-Space は fenri の呼び出し)

#NoEnv
SendMode,Input
SetTitleMatchMode,3
#InstallKeybdHook
#UseHook
#NoTrayIcon

Menu,ctRowMenu,Add,&addRow,keyAddRow
Menu,ctRowMenu,Add,&delRow,keyDelRow

Menu,ctColMenu,Add,&addCol,keyAddCol
Menu,ctColMenu,Add,&delCol,keyDelCol

Menu,ctClearMenu,Add,clear&Filter,keyClearFilter
Menu,ctClearMenu,Add,clear&Hyperlink,keyClearHyperlink
Menu,ctClearMenu,Add,clear&Comment,keyClearComment
Menu,ctClearMenu,Add,clear&All,keyClearAll

Menu,ctMenu,Add,&Row,:ctRowMenu
Menu,ctMenu,Add,&Col,:ctColMenu
Menu,ctMenu,Add,c&lear,:ctClearMenu
Menu,ctMenu,Add,&filter,keyAddFilter
Menu,ctMenu,Add
Menu,ctMenu,Add,Canc&el,cmenuCancel

Menu,ctMenu,Show

cmenuCancel:
ExitApp


sendkeys(keys) {
  for i, e in keys {
    send, %e%
    sleep 100
  }
}

keyAddCol:
  sendkeys(["!h", "i", "2", "c"])
return

keyAddRow:
  sendkeys(["!h", "i", "2", "r"])
return

keyDelRow:
  sendkeys(["!h", "d", "r"])
return

keyDelCol:
  sendkeys(["!h", "d", "c"])
return

keyClearFilter:
  sendkeys(["!a", "c", "2"])
return

keyClearHyperlink:
  sendkeys(["!h", "e", "l"])
return

keyClearComment:
  sendkeys(["!h", "e", "m"])
return

keyClearAll:
  sendkeys(["!h", "e", "a"])
return

keyAddFilter:
  sendkeys(["!h", "s", "f"])
return
GitHubで編集を提案

Discussion