Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3262 / 13644 ツリー ←次へ | 前へ→

【63228】入力文字列をVBAに受け渡す方法 りく 09/10/18(日) 18:00 質問[未読]
【63229】Re:入力文字列をVBAに受け渡す方法 かみちゃん 09/10/18(日) 18:05 発言[未読]
【63230】Re:入力文字列をVBAに受け渡す方法 りく 09/10/18(日) 18:23 発言[未読]
【63231】Re:入力文字列をVBAに受け渡す方法 かみちゃん 09/10/18(日) 18:30 発言[未読]
【63232】Re:入力文字列をVBAに受け渡す方法 kanabun 09/10/18(日) 22:48 発言[未読]

【63228】入力文字列をVBAに受け渡す方法
質問  りく  - 09/10/18(日) 18:00 -

引用なし
パスワード
   あるセルに入力した文字列に対して、マクロを実行させると、別の特定ブックにおいてその文字列を検索し、結果を表示させる、そういうマクロを作りたいのですが、ここで質問したいのは、「セルに入力した文字列に対して、マクロを実行させると」の部分に関してです。tanaka と入力し、リターンキーを押下して、入力を確定させた後の文字列ではなく、tanaka と入力して、リターンキーを押下する前の状態(カーソルがそのセルの a の後にまだ存在して点滅している状態)において、入力した tanaka という文字列に対して、マクロを実行させたいのです。これは可能でしょうか。もし可能であればその方法を教えてください。

【63229】Re:入力文字列をVBAに受け渡す方法
発言  かみちゃん  - 09/10/18(日) 18:05 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> tanaka と入力し、リターンキーを押下して、入力を確定させた後の文字列ではなく、
> tanaka と入力して、リターンキーを押下する前の状態(カーソルがその
> セルの a の後にまだ存在して点滅している状態)において、入力した tanaka
> という文字列に対して、マクロを実行させたい

これらの違いがよくわかりません。
もう少し具体的に説明していただけませんか?

tanakaと入力し終わったかどうかは、どのように判断するのですか?
それとも、t、ta、tan、tana、tanak、tanaka で実行するのですか?

【63230】Re:入力文字列をVBAに受け渡す方法
発言  りく  - 09/10/18(日) 18:23 -

引用なし
パスワード
   >tanakaと入力し終わったかどうかは、どのように判断するのですか?
>それとも、t、ta、tan、tana、tanak、tanaka で実行するのですか?
説明不足で申し訳ありません。マクロはコントロールキー(Ctrl+z 等)に割り付けておき、Ctrl+zの押下をトリガにしてマクロを実行させることを考えています。tanakaと入力しリターンキーを押下する前にCtrl+zを押下すると、tanaka を渡す、そういうものを作りたいのです。(コントロールキーへの割り付けがこの場合都合が悪ければ別の手段でも良いのですが。)

【63231】Re:入力文字列をVBAに受け渡す方法
発言  かみちゃん  - 09/10/18(日) 18:30 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> tanakaと入力しリターンキーを押下する前にCtrl+zを押下すると、tanaka を渡す

セルの編集状態のままでマクロを実行することですか。
たぶんできないのではないでしょうか?
私は、したことないですし、わからないので、他の方のコメントをお待ちください。

【63232】Re:入力文字列をVBAに受け渡す方法
発言  kanabun  - 09/10/18(日) 22:48 -

引用なし
パスワード
   ▼りく さん:

横から失礼します

> 入力を確定させた後の文字列ではなく、tanaka と入力して、
> リターンキーを押下する前の状態(カーソルがそのセルの
> a の後にまだ存在して点滅している状態)において、
> 入力した tanaka という文字列に対して、マクロを実行させたい

セルが編集状態にあるときにはワークシート上のイベントは
起こりませんから、たぶん、それは不可能ではないでしょうか。

逆に、セルの上にTextBoxコントロールを置いておいて、
そのTextBoxに入力させれば、1文字入力するごとに
Change イベントが発生します。あるいは KeyDOwn
KeyPress KeyUp イベントも起こります。
ので、入力中の文字列で他のリストを検索したり、
入力規制(数字だけとか半角英数字だけとかの入力を許可する
)は可能です。

TextBox Control には LinkedCell というプロパティがありますから、
これで目的のセルとリンクしておくと、TextBoxに1文字入力するたびに
セルの文字列がシンクロして変わります。

3262 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free