VBAに存在しない「やり直し」ショートカットキーと同じ操作を行う方法
一般的なショートカットキーとして、Ctrl + Z は「元に戻す」、Ctrl + Y は「やり直し」と認識している方は多いのではないでしょうか。
しかし、VBAにおいてはこのショートカットキーで「やり直し」ができません。
VBAの罠
例えば、タイピングやキー入力を誤ったとき、何度か Ctrl + Z を繰り返すも、連打し過ぎて戻しすぎてしまうことありませんか?
こんなとき、Ctrl + Y の「やり直し」で Ctrl + Z を押す前の状態に戻すことができるのは便利ですよね。
しかし、VBAで Ctrl + Y は「 現在行を削除」が割り当てられています。
なので、「やり直し」どころか、これまで書いたコードが行単位でどんどん削除されていくことに……。
こうなるともう Ctrl + Z を押す前の状態に戻すこともできません。
なぜこんな罠が仕掛けられているのかはわかりませんが、実はこの「やり直し」機能を、VBAでも行う方法があるんです。
設定手順
1.VBAのメニュー「表示」のツールバーから、「ユーザー設定」を選択。
2.ユーザー設定画面が起動するので、コマンドタブにある分類の「編集」を選択し、「やり直し」のアイコンをツールバーの任意の場所へ追加します。

3.追加したボタンの編集から名前を「やり直し(&Y)」とする。(&YのYのところは任意のキーにしてください)

4.再度ボタンの編集項目から「イメージとテキストを表示」を選択


これにて Alt + Y が「やり直し」のショートカットキーとして割り当てができました。
まとめ
この設定方法を用いることで、他の機能も任意のショートカットキーを割り振ることが可能です。
注意点としては、そのまま Ctrl + Y の割り当てを上書きするようなことはできません。
Alt + ◯ の組み合わせという制約はありますが、できなくて困ることがなくなるだけでも作業中の悩みをひとつ解消することができます。
ぜひご活用ください。
このカテゴリの最新記事
2024.07.16
2023.11.09
2023.12.20
2023.09.15