こんにちは!Lenocoです。本日も見てくださりありがとうございます。
今回はアドインのショートカットについてのTips回です!!!
マクロをアドインにしてショートカットキーで呼び出す
前回作った、「縦横入れ替え値貼り付け」マクロをアドインにして、ショートカットキーを設定してみましょう。
ショートカットキーを設定
まずは前回作成した「TransposePasteValues」のマクロを開いてください。
Alt+F11を押し、VBE(Visual Basic Editer)の画面を開いてください。
ThisWorkbookをダブルクリックしてください。
そして以下のコードを書いてください。
コード
Private Sub Workbook_Open()
Application.OnKey "^e", "TransposePasteValues" ' [Ctrl]+[e]
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "^e" ' [Ctrl]+[e]
End Sub
説明
「Workbook_Openと」「Workbook_BeforeClose」はイベントプロシージャーというものです。
それぞれ、ブックが開かれたとき、ブックが閉じられたときに起動します。
今回は上記をそのままコピーしてもいいですが、それ以外の方法として、
画面上のプルダウンからイベントを選択することができます。
左のプルダウンで(General)から「Workbook」を選択し、
右のプルダウンで「Open」「BeforeClose」を選択すると、プロシージャの枠が自動的に書き出されます。
間違えて別のイベントを選択してしまった場合は、そのプロシージャごと削除すればOKです。
様々なイベントをこちらから選ぶことができるので、どんなイベントがあるか見てみてください。
私がよく使用するのは、「SheetBeforeDoubleClick」「SheetChange」あたりでしょうか・・
話を戻します!
「Workbook_Open」の中で、Onkeyという命令を使い、ショートカットキー「Ctrl+E」にマクロ「TransposePasteValues」を呼び出す処理を割り当てています。
Shift、Ctrl、Altキーはそれぞれ以下の記号で表しています。複数組み合わせることもできます。
Shift → +(正符号)
Ctrl → ^(カレット)
Alt → %(パーセント)
「Workbook_BeforeClose」の中でCtrl+Eを通常の意味に戻しています。
なので、Excelのブックを開いている間、マクロをショートカットで呼び出すことができるようになります。
アドインを保存
そして次にこのマクロをどのブックでも使えるように、アドインという形で保存しましょう。
VBEの画面は閉じて、「ファイル」タブから「名前を付けて保存」をクリックします。
ファイルの種類で「Excel アドイン(*.xlam)」を選択肢、
分かりやすい名前を付けて保存します。
※ファイルの種類を選んだ時点で、Microsoft>Addinsのフォルダに勝手に変更されると思います。
変更せずこのフォルダに保存してください。
アドインの登録
最後に、このアドインを登録しましょう。
「開発」タブを開き「Excelアドイン」をクリック、
「参照」ボタンを押し、先ほど保存したアドインファイルを選択して「OK」を押します。
該当のアドインにチェックが入っていることを確認して「OK」を押します。
書式を設定したセルをコピーし、
別のセルを選択し、Ctrl+Eを押してみてください。
うまく動きましたか?
Lenoco