- ベストアンサー
【緊急】エクセルVBA(2003)でのショートカットキーの無効化について
助けてください。 現在、エクセル2003のVBAで開発をしています。 ctrl+Z や CTRL+Y のようなショートカットキーを無効にしたいのですが 方法がいまひとつ解かりません。 どなかた、初心者にも理解できるレベルで説明願えないでしょうか。 よろしくお願いいたします!
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ダミーの関数(中身は空)を作成して、マクロのショートカットキーを割り当てたら無効にできました。 例えばこんなダミー関数を作成。 sub CtrlZ end sub メニューの [ツール]-[マクロ]-[マクロ] から CtrlZ に Ctrl+z を割り当てる。 この方法が一般的かはわかりません。
その他の回答 (2)
- hana-hana3
- ベストアンサー率31% (4940/15541)
無効:Application.OnKey "{F1}", "" 有効(初期値に戻す):Application.OnKey "{F1}" マクロ設定:Application.OnKey "{F1}", "マクロ名" の方法で、ショートカットのコントロールが可能です。
お礼
残念ですがオペレーションで対応することにしました。 回答ありがとうございました。
補足
言葉が足りなくて申し訳ありません。 エクセルのワークシートでは無く、フォームでのショートカットキーの操作を無効にしたいのです。 良い方法がございましたらお教え願えますでしょうか?
- ttyp03
- ベストアンサー率28% (277/960)
#1です。 >ワークシートだと確かに無効に出来ましたが、VBAでは無効になりませんでした。 VBAでは、というのが良くわかりません。 フォーム上で、とかそういうことでしょうか? それとも Visual Basic Editor 上でってことですか? 補足お願いします。
お礼
残念ですがオペレーションで対応することにしました。 回答ありがとうございました。
補足
言葉が足りなくて申し訳ありません。 ttyp03氏のおっしゃるとおり、フォーム上でということです。 application.onkey = "^Z" , "" も試しましたが、これもワークシート上でのみしか効きませんでした。
補足
ワークシートだと確かに無効に出来ましたが、VBAでは無効になりませんでした。 お忙しいところ申し訳ありませんが、出来ましたらもう少し詳しくご説明お願いします。