Excel

【Excel For Mac】自分で作成したExcelアドイン(ExcelAddin)にショートカットキーを割り当てる方法

こんにちは、ノオトです。

ノオト
ノオト
自分で作ったExcelアドイン(マクロ)にショートカットキーを割り当てられれば、幸せかもしれないと思ってやったらMacでもできたよ

本記事のテーマ

ExcelForMacユーザに向けて「自分で作成したExcelアドインに対して、ショートカットキーを割り当てる方法」について書きます。

本記事の信頼性

本記事を書いている私はこんな経験があります。
・MacBookProでバリバリ仕事をしています。

読者へのメッセージ

Excel For Macを仕事で使っています。毎日使うので最も効率のよい方法を考えていたら自動化にたどり着きました。Excelマクロをアドイン(.xlaファイル)にしてショートカットキーを割り当てることができれば、WindowsExcelにも負けない効率的で自由な操作が可能になります。

それでは、いきましょう。

前提事項

・Excel For Macを使用しています。Windowsも同じ流れと思いますがキャプチャは無いのでWindowsのキーに合わせた方法で設定しましょう。

・マクロの作成&アドイン(.xla)の作成は割愛します。

Excel For Macの開発タブからVisual Basicを開く

ExcelForMacのリボンから、開発タブを選択し Visual Basic 開きます。

プロジェクトウィンドウから、ショートカットキーを設定したいExcelアドインのThisWorkbookを選択

プロジェクトウィンドウは上記ウィンドウです。Visual Basicを起動すると右上端に表示されているはずです。なければ、画面上部の↓にぎやかなボタンをおすと表示されます。


VBAプロジェクト>Microsoft Excel オブジェクト>Thisworksheet

Thisworksheetにこの後記載するスクリプトを書いて、保存することでアドインファイル(.xla)に保存されます。次回起動する際にもこのスクリプトが有効になりショートカットキーが使えるようになります。

ノオト
ノオト
ワクワクが止まらん。半年早くしりたかったなー

Excelアドインに対しショートカットキー「割り当て」と「割り当て解除」のスクリプトを記載

‘ 割り当て
Private Sub Workbook_Open()
    Application.OnKey “+^w”, “マクロ名”  ‘ [Ctrl]+[shift]+[w]
End Sub

‘ 割り当て解除
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.OnKey “+^w”
End Sub

解説
「’ 割り当て」でショートカットキーを割り当てます。
「’ 割り当て解除」でExcelを閉じる際に、ショートカットキーを割り当てを解除します。

ここでは、キーボードの [Control]+[shift]+[w]を押したときにこのアドイン(マクロ)が起動するようにしています。

+ Shiftキー
^ Controlキー
文字キー ※好きなキーを入力
項目名 Commandキー
項目名 optionキー

 

私はすべてのExcelアドインに対するショートカットを、「Control」+「Shift」+「何か」にしています。よく使うもののうち、マウスと組み合わせで使いがちなもの(図形に対するアドイン(マクロ)とか)は、左手だけで操作できる位置に置くのがお気に入りです。

マクロ名とはMacro1などマクロを作成する際につけた名称です。下記の画像のModule1を開くと、1行名に書いてある名前です。

例)Sub Macro1()

ここをコピペします。

スクリプトを書いたら忘れずに保存しましょう!

Excel For Macを再起動

シートを閉じるだけでなく、Excelアプリを再起動してください。 再度起動することで反映されていることが確認できます。

まとめ

Excel for Mac は元々ショートカットキーが少なく、設定によって使い勝手が大きく変わります。

・自分でアドイン(マクロ)を作成する
・ショートカットキーを割り当てる

これらの設定はExcel for Mac を効率よく使う上で欠かせない設定となるでしょう。

関連記事

【Mac仕事効率化】Magicキーボードの右上「イジェクトキー」にショートカットキーを割り当てるこんにちは、ノオトです。 本記事のテーマ Macユーザに向けて「イジェクトキーを使ったアプリの切り替え」について書きます。 本...
>>>CTAをここに設置予定