特定のシートへ移動するマクロをショートカットで行えるようにしたいと考えて
マクロのオプションからショートカットでマクロを実行することはできたのですが
複数のブックを開いているときに同じショートカットを登録していて片方のマクロのみ実行されるのですがどうしたら回避できますか?
[Ctrl+q]で今選択しているブックの一覧のシートにジャンプしたいです。
アクティブになってるブックのみショートカットを割りあてるようにしたらいいかなって調べて
Application.OnKeyを使えばできそうだったのですが
とりあえず片方のブックに記述してみましたがエラーはでないですがまったく反応してません…なぜでしょうか
Private Sub Worksheet_Activate()
Application.OnKey "^q", "一覧にジャンプ"
End Sub
Private Sub Workbook_Deactivate()
Application.OnKey "^q", ""
End Sub
Sub 一覧にジャンプ()
Worksheets("一覧").Activate
End Sub
ThisWorkbookに記述してます。
No.2ベストアンサー
- 回答日時:
返事が遅くなりました。
Sub Auto_Open() と Sub Auto_Close() のショートカットキーをグローバル化(どこでも使えるようにすること)には、個人用マクロブックの標準モジュールに書くというのが一般的です。
ただし、一覧というシートが全てにあるわけではないので、エラートラップを置いてあげます。
Sub 一覧にジャンプ()
On Error Resume Next
ActiveWorkbook.Worksheets("一覧").Activate
On Error Goto 0
End Sub
として置けばよいと思います。
なお、Activate の意味はご承知だとは思いますが、複数のシートをSelect した状態のままで、目的のシートを前面に出すことも可能だということです。
どちらかというと、シート.Select にする方が多いかもしれません。
No.1
- 回答日時:
以下のマクロは、どこに書いているのですか?
Sub 一覧にジャンプ()
Worksheets("一覧").Activate
End Sub
ThisWorkbook モジュール だったら、これは動きませんね。モジュールを指定しないなら、標準モジュールになってしまいます。同じ場所に書きたかったら、
Worksheet_Activate() の中は、
Application.OnKey "^q", "ThisWorkbook.一覧にジャンプ"
私は、全部、標準モジュールに書きます。呼び出しが楽だからです。
Sub Auto_Open() と Sub Auto_Close() に書きます。
回答ありがとうございます。
ご指摘されたどおりThisWorkbook.つけてませんでした…
そもそもSubプロシージャがsheet_Activateになってました。(;´д`)
ブックがアクティブになってる状態でいつでも有効にしたかったのにバカでした
質問がちょっとずれるのですが
標準モジュールに書いて機能したのは確認できたのですが
同時に他のブックを開いている状態でショートカットキーを打つと反応しなかったりマクロを実行できないといった事が起きてしまいます。
一覧というシートが実はブックごとに"○○一覧"という感じのシート名になっているので
複数ブックを同時に開いているときに選択しているブックでのみ有効なショートカットにしたかったのですができますか?
Sub Auto_Open() と Sub Auto_Close() で書くと開いた直後はいいんですが最初に開いたブックに戻ってきたときに無効なんですよね…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/13 08:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/02/07 09:58
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Visual Basic(VBA) Excelのマクロコードについて教えてください 1 2022/03/27 12:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/07/13 12:31
- Excel(エクセル) 【VBA】複数ブックから特定のシートを抽出して一つのブックに集約するマクロについて 3 2022/09/04 15:05
- Excel(エクセル) 複数のブックをひとつのブック(複数のシートにまとめる)場合にシートとの順番について 5 2022/12/28 20:47
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
このQ&Aを見た人はこんなQ&Aも見ています
-
風水の観点で選ぶ観葉植物とは?置き場所や上げたい運気ごとの注意点を紹介!
観葉植物で運気をアップするコツを、風水デザイン1級建築士の福島昌彦さんに伺った。
-
エクセルVBA フォーム上でOnkeyがうまく出来ない
Excel(エクセル)
-
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
【緊急】エクセルVBA(2003)でのショートカットキーの無効化について
Visual Basic(VBA)
-
6
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
7
VBAで「致命的なエラー」が出ました。どのくらい致命的なんでしょうか?
Access(アクセス)
-
8
Excel vbaでキーの操作の入力
Excel(エクセル)
-
9
VBAでセルがコピーされているか判定したい
Excel(エクセル)
-
10
エクセルのVBA 特定のセルでエンターキーでマクロ実行
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
20歳代と20代 どう違う?
-
30cm位からジャンプについて。
-
ジャンプ+の容量がジャンプの...
-
お部屋ジャンプリンクについて
-
エクセル 保護すると”ユーザー...
-
パワーポイントのハイパーリン...
-
池の小魚がジャンプするのはなぜ
-
Windows edgeで楽天HPだけ表示...
-
足の長さとジャンプ力の関係
-
ネットしていて、前の画面に戻...
-
エクセルのシート間のリンクで...
-
僕は、今、中学2年生で1年で身...
-
Application.OnKey でマクロの...
-
WordからPDF保存した時の目次ジ...
-
Dr.スランプは、完全版を買った...
-
漫画家のアシスタントと美大生...
-
保育士してます。 園児から「先...
-
「バリバリ伝説」でのヒデヨシ...
-
漫画家はみな書道が得意か? 漫...
-
青山剛昌先生にファンレターを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
20歳代と20代 どう違う?
-
Excelでハイパーリンクでジャン...
-
30cm位からジャンプについて。
-
エクセルのシート間のリンクで...
-
パワーポイントのハイパーリン...
-
ジャンプ+の容量がジャンプの...
-
ワード ショートカットが使えない
-
MPCについて
-
Windows edgeで楽天HPだけ表示...
-
ネットしていて、前の画面に戻...
-
Excelでページジャンプ
-
It works!とは?
-
WordからPDF保存した時の目次ジ...
-
Application.OnKey でマクロの...
-
IT用語でリダイレクト、ハイパ...
-
EXCELのHYPERLINK関数の”文字列...
-
メール内でのジャンプ機能
-
お部屋ジャンプリンクについて
-
エクセル 保護すると”ユーザー...
-
池の小魚がジャンプするのはなぜ
おすすめ情報