非アクティブだけどキーに反応するには?

解決


アコ  2005-11-05 22:24:28  No: 92444

すみません、質問させて頂きます
エクセルのマクロ(VBA)にて、エクセル自体が非アクティブだけどエクセル上のなんらかのショートカットキー(マクロ)に反応する方法はないでしょうか?

例えば
エクセル自体が非アクティブで、IEを操作(IE上のスクロールやクリックにはIEが反応)しながら ALT + 1 のキーにエクセルが反応する
というような形なんですが

タイマ監視だと困ることになりそうなのでAPI等を使ってできたらいいかと考えているんですけどどうもよくわからない次第です

検索にもなかなか出てこなくてこちらでもう困っています  (T。T)

誰かお力添えをお願いします  m(_ _)m


あん  2005-11-06 01:27:10  No: 92445

エクセルマクロを実行するプログラムを作って
それをショートカットに登録します。
その時、ショートカットキーを追加すればいいかも
Cntl+Alt+()になります。
WindowsXPで確認。


アコ  2005-11-06 14:25:01  No: 92446

あんさん、お返事ありがとうございます!
私の質問が悪かったみたいですみません  m(__)m

ショートカットキーという表現では誤解を招くので
F5とかテンキーなどに割り当てられたキーに非アクティブでもキー反応するエクセルマクロを組みたいのです

どうかよろしくお願いします


あん  2005-11-06 23:22:06  No: 92447

エクセルがアクティブになってなくても
エありませんクセルのマクロが実行できる方法を知りたいんじゃないのかな?
それなら上の方法で
じゃないなら意味わかりません。
エクセルからショートカットキーでマクロを実行できることは
知ってるよね?
上の質問だとそれも知らないように見えます。


アコ  2005-11-07 03:05:54  No: 92448

あんさん、すみません。(・_;)
言葉足らずでした。
ショートカットキーでマクロを実行できることは知っています。

私が知りたいのは
エクセルのマクロ実行状態で非アクティブにされていてもマクロがなんらかのキーに反応する方法
です

どうかよろしくお願いします!


もげ  2005-11-07 17:51:11  No: 92449

無理筋を盲進するより、そうしないで済む方法を考えることはできないのかな...
とは思いますが、
グローバルフック(VBでは不可能なので、VC++でDLL作ってVBから呼ぶ)
を使うか、DirectInputを使うとか。
http://www.geocities.co.jp/SiliconValley/7406/tips/mouse/mouse2.html


dark  2005-11-07 18:18:40  No: 92450

> エクセルのマクロ実行状態で非アクティブにされていてもマクロがなんらかのキーに反応する方法
ほかのアプリでそのキーを使いたいとき、意図しないマクロが動いてしまう(横取りする)仕様はどうかと思いますが。


アコ  2005-11-08 00:33:48  No: 92451

おそばせながら皆様お力添えありがとうございます

もげさんの方法(フック)でなんとかなりそうです!
初心者で考えなしに無理筋を通そうとしていました
すみません  m(_ _)m
でもお陰様で目的は達成できそうです

darkさん
>ほかのアプリでそのキーを使いたいとき、意図しないマクロが動いてしまう(横取りする)仕様はどうかと思いますが。
他のアプリを使う場合はマクロを止めるので大丈夫そうです

こんなたくさんの解決方法を頂けて嬉しいです
回答くださった皆様どうもありがとうございました


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加