
No.1ベストアンサー
- 回答日時:
通常はヘルプ表示のファンクションキーを別の事に利用する訳ですね?
では、「Application.OnKey "{F1}", "Sheet1_F1"」 は、
どこに書かれているのでしょうか?
シート?標準モジュール?
また、「Sheet1_F1」は標準モジュールに書かれたプロシージャでしょうか?
それに、書式の問題もあります。
EXCELを起動後、終了するまでキーの機能変更を有効にするには、
標準モジュールに書かれたプロシージャでなければいけません。
また、auto_openで書かなければ最初から機能しなかったと思います。
'ヘルプキー無効にする例
Sub auto_open()
Application.OnKey "{F1}", "TEST"
End Sub
Sub TEST()
MsgBox "ヘルプ無効"
End Sub
記載するのは標準モジュール1つで構いません。
上記のコードを標準モジュールにコピーして保存後、EXCELを再起動させて「F1キー」を押して見て下さい。
(マクロを有効にするのをお忘れ無く)
今回の場合は、Application.OnKey "{F1}", "Sheet1_F1" ですが・・・
auto_open()というサブプロシジャーは、エクセル起動時に実行が予約されている名前で、
VBAとしてはブックが開かれた時、一度だけ実行します。
エクセル本来の機能に戻すには、
Application.Onkey "{F1}"
と、プロシージャの部分を省略すると、エクセルの通常の機能へ戻るのですが、
面倒であれば、そのままエクセル自体を終了すれば問題ありません。
ただし、上記VBAを含むブックを読み込んだエクセル自体を終了せずに、
VBAを含まない、別のブックを読み込んでも機能はキャンセルされませんので注意が必要です。
'ブックのみを閉じる時、ヘルプキーを有効にする例
Sub auto_close()
Application.OnKey "{F1}"
End Sub
上記はブックを閉じる時ですが、考え方は、auto_open()と同じです。
auto_open、auto_close は、特定のブックで初期設定や自動保存など
便利に使える(正常起動、正常終了の場合ですが)ものですが、
扱いには注意して下さい。
さわらなくて良いメニューまで非表示にしてしまった経験者です(^^;;
この回答への補足
Application.OnKey "{F1}", "Sheet1_F1"
は、auto_open() に記述しています。
説明がわかりづらかったようです。
[Tab][Enter]で各項目に移動した直後は [F1] を押すと、Sheet1_F1 を実行するのですが、各項目上で入力途中で("1"と入力した直後に) [F1] を押すと、なぜか、ヘルプが起動してしまうのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows Me・NT・2000 widows xpのエラーで利用ができなくなりました 3 2022/12/21 13:43
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- アジア ネパールのビザ ネット事前申請について 1 2023/03/14 17:35
- その他(クラウドサービス・オンラインストレージ) おすすめのパスワードマネージャは? 1 2023/02/28 20:09
- Windows 8 動画の再生とタイトルの変更方法を教えてください。 3 2022/08/01 14:51
- Excel(エクセル) 隣り合っていないセルを まとめて税込表示したい 8 2022/09/25 14:32
- その他(AV機器・カメラ) ロジクール ウェブカメラ HD c270についてです。 普段通り仕事で使っていたら、気づかないうちに 4 2023/02/12 13:40
- Excel(エクセル) Excelの複数人での参照について 2 2022/06/01 13:38
- その他(Microsoft Office) Wordを変換してExcelに挿入 2 2022/07/04 23:59
- docomo(ドコモ) dアカウントの携帯電話番号が登録できない。ワンタイムコードがSMSに届かない。 2 2023/07/09 23:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザー定義関数に#NAME?が返...
-
VBAで別モジュールへの変数の受...
-
vba userFormのSubを標準モジュ...
-
モジュールとクラスの違いって...
-
エクセルVBAでシートモジュール...
-
Excel VBA 定義されたプロージ...
-
モジュールからフォームのボタ...
-
VBAで旧字体を異字体に一括で変...
-
大量の標準モジュールを解放す...
-
acwzlibとは?
-
VBAのモジュールについて教えて...
-
'Range'メソッドは失敗しました
-
Excel VBA 『Call』で呼び出す...
-
Excelシート内セル記述の違いに...
-
xoops myAlbum-Pで画像がアッ...
-
VBのフォームモジュールと標準...
-
プログラムでノッチフィルタの...
-
AddressOf と同じ機能を持った...
-
VBIDEで未使用の変数の抽出
-
【Excel VBA】標準モジュールに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBAでリンク切れをチェッ...
-
Excel VBAで、ユーザーフォーム...
-
ユーザー定義関数に#NAME?が返...
-
vba userFormのSubを標準モジュ...
-
Excel VBA 定義されたプロージ...
-
モジュールとクラスの違いって...
-
モジュールの最大数はいくつな...
-
VBAで別モジュールへの変数の受...
-
Excel VBA 『Call』で呼び出す...
-
エクセルVBAでシートモジュール...
-
VBでグローバル変数を宣言するには
-
【vba】フォームに書いてあ...
-
SendKeysの使い方について
-
モジュールからフォームのボタ...
-
VBAで旧字体を異字体に一括で変...
-
モジュールとは何ですか
-
ExcelでTelnetを動かしたい
-
標準モジュールを削除したい。(...
-
VBA This Workbookモジュール...
-
Access VBA標準モジュールにつ...
おすすめ情報