
特定のシートへ移動するマクロをショートカットで行えるようにしたいと考えて
マクロのオプションからショートカットでマクロを実行することはできたのですが
複数のブックを開いているときに同じショートカットを登録していて片方のマクロのみ実行されるのですがどうしたら回避できますか?
[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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルVBA フォーム上でOnkeyがうまく出来ない
Excel(エクセル)
-
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
ExcelVBA キーイベント設定した関数が別のファイルで実行されエラーになります。回避する方法は?
Visual Basic(VBA)
-
-
4
エクセルのVBA 特定のセルでエンターキーでマクロ実行
Excel(エクセル)
-
5
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
6
テキストボックス(VBA)でEnterを押したときに作動するマクロ
Access(アクセス)
-
7
エクセルVBAでオートフィルター最上行を取得するには
Excel(エクセル)
-
8
Excel VBA あるセルでENTERを押すと特定のセルへ移動したい
Excel(エクセル)
-
9
EXCELのVBAでシートコピーをしたとき元のマクロを削除するには?
Excel(エクセル)
-
10
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
11
個人用マクロのショートカットが使えない
Excel(エクセル)
-
12
エクセルでマクロを作成してますが、バックスラッシュが入力出来ません。 設定方法等教えて頂けないでしょ
Excel(エクセル)
-
13
Excel VBA マクロ実行中のみテンキー操作できるようにしたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VLOOKUP FALSEのこと
-
if関数の複数条件について
-
同じ名前(重複)かつ 日本 ア...
-
excel
-
【マクロ】数式を入力したい。...
-
表計算ソフトでの様式の呼称
-
空白のはずがSUBTOTAL関数でカ...
-
【関数】=EXACT(a1,b1) a1とb1...
-
【マクロ画像あり】❶1つの条件...
-
エクセルの文字数列関数と競馬...
-
【画像あり】【関数】指定した...
-
エクセルでフィルターした値を...
-
エクセルに写真が貼れない(フ...
-
エクセルのライセンスが分かり...
-
【関数】3つのセルの中で最新...
-
LibreOffice Clalc(またはエク...
-
【マクロ】excelファイルを開く...
-
【マクロ】【画像あり】❶ブック...
-
【マクロ】既存ファイルの名前...
-
【マクロ】【画像あり】4つの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
20歳代と20代 どう違う?
-
少年ジャンプの代表作品と言え...
-
Windows edgeで楽天HPだけ表示...
-
エクセルのシート間のリンクで...
-
Application.OnKey でマクロの...
-
MPCについて
-
ワード ショートカットが使えない
-
It works!とは?
-
Excelでハイパーリンクでジャン...
-
ネットしていて、前の画面に戻...
-
IT用語でリダイレクト、ハイパ...
-
メール内でのジャンプ機能
-
Excelでページジャンプ
-
30cm位からジャンプについて。
-
パワーポイントのハイパーリン...
-
エクセルのショートカットにつ...
-
お部屋ジャンプリンクについて
-
ジャンプ力はどうやったら上が...
-
池の小魚がジャンプするのはなぜ
-
ジャンプ+の容量がジャンプの...
おすすめ情報