エクセルマクロでActivateNextを使ってCtrl+Tabと同じ動作をするツールバーを作りました。
このツールバーを使ってCtrl+Shift+Tab(ActivatePrevious)と同じ動作をさてたいと思っています。
通常はボタンを押すとActivateNextが動き、Shiftを押しながらボタンを押すとActivatePreviousが動くようにしたいのです。
プレビューボタンはShiftを押しながらボタンを押すと印刷ボタンになりますよね。
イメージまで変わらなくてもいいです。処理だけでも変えたいです。
Shiftが押されているって情報がマクロに渡せれば良いのでしょうが・・・。
Sub ウインドウ切替(kbn)
If kbn = 1 Then
ActiveWindow.ActivatePrevious
Else
ActiveWindow.ActivateNext
End If
End Sub
そのような情報って取得できるのでしょうか?[Excel2000]
No.1ベストアンサー
- 回答日時:
Windows APIのGetAsyncKeyStateを使うとキーボードの状態が取得できます。
実際のコーディングはこんな感じでしょうか。
Option Explicit
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Public Sub ウインドウ切替()
If GetAsyncKeyState(vbKeyShift) <> 0 Then
'Shiftキーが押されている
ActiveWindow.ActivatePrevious
Else
'Shiftキーは押されていない
ActiveWindow.ActivateNext
End If
End Sub
回答ありがとうございます。
今までAPIという言葉に対し、目を伏せていました。
APIを使うと何でもできるってイメージがあるのですが、何ができるか知らない為、発想が行き着きません。
避けつづけるのも、そろそろ限界かもしれませんね。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- マウス・キーボード キーボード設定で困っています。長文です。 2 2022/12/10 12:44
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- Windows 10 Windows10の再起動について 3 2022/09/21 21:30
- Visual Basic(VBA) Powerpointでランダムな数字の結果を表示するマクロ 2 2023/08/04 10:04
- Excel(エクセル) 【マクロ】プリントスクリーンした画像をエクセルに貼付して印刷したい 6 2022/11/30 20:11
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Excel(エクセル) 製品番号での整列と、検索に関して 3 2023/06/28 19:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excel でctrl+shift + 矢印ボタン
-
画面の左上の進む・戻るの矢印...
-
ワードの印刷レイアウト表示画...
-
EXCELで、ツールバーのクリック...
-
エクセルで チェックボタンを...
-
学生服学ランはボタン以外同じ...
-
PDF Xchange viewerの書体変更
-
Windows Media Player10でフル...
-
エクセルでセルの内容を表示す...
-
google chromeの閲覧履歴が下ま...
-
discord内での動画共有について
-
ページの下方が画面表示できない
-
文字が斜体になってしまうので...
-
エクセルのセルに同じ大きさの...
-
Bing検索サイトの上に、COPILOT...
-
ローマ字数字IIを正確に表示す...
-
Excelのウィンドウが少し小さく、ズ...
-
自分のiPadからアマプラ契約を...
-
スワイプの左右の定義
-
Gmailのログインで登録もしてい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワードの印刷レイアウト表示画...
-
戻る が消えてしまいました。
-
学生服学ランはボタン以外同じ...
-
excel でctrl+shift + 矢印ボタン
-
画面から「戻る」のボタンが消...
-
surfaceプロ2のキーボードの矢...
-
Googleフォトのこの雲マークに...
-
エクセル終了時にグレー画面に...
-
Excel VBA msgboxに...
-
エクセルシート上のボタンの削除
-
EXCELで、ツールバーのクリック...
-
更新ボタンって どこに有るの...
-
数式エディッターをずっと表示...
-
ワードのコントロールパネルの...
-
エクセルのundo(元に戻す)ボ...
-
エクセルで「HOME」ボタン
-
Word2010で水平方向のスケール...
-
IEの「戻る」ボタンを押すの...
-
リヴリーのパークが表示されない
-
言語バーの“入力方式”のボタン...
おすすめ情報