14歳の自分に衝撃の事実を告げてください

Excel2000を使用しています。

VBAで、ワークシート上にあるテキストボックス内にカーソルがある状態で、Enterキーが押されたときに作動するマクロを作りたいのですが、方法が分かりません(ヘルプや翔泳社のVBA辞典も見たのですが、どうもよく分かりません)

ちょうど、gooやYahoo!の検索窓のような感じでマクロを動作させたいのですが、どのようにしたら良いでしょうか?ご存知の方、どうか宜しくお願いいたします。

A 回答 (2件)

「テキストボックス」と言ってもいろいろ種類があるのですが・・・


オートシェーブの「テキストボックス」ではないですよね。

Excelのメニューから[表示]-->[ツールバー]-->[コントロールツールボックス]を
指定し、ツールボックスの中ににある「テキストボックス」をクリックして、
シート上でクリックして配置します。
そのコントロールをWクリックして表示されたコードウィンドウで、下記コードを
上書き貼り付けします。

これで如何でしょうか。

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
    ByVal Shift As Integer)
  If KeyCode <> 13 Then Exit Sub
  MsgBox "<Enter>を押しましたね。"

  'ここにコードを記述します。

End Sub
    • good
    • 2
この回答へのお礼

すみません。フォームのテキストボックスです。
教えていただいた方法で上手くいきました。
KeyDownイベントでマクロを起動させてから、押されたキーが何であるか判別させれば良いのですね!
てっきり、Enterキー専用のイベントか何かあるのだと勘違いしていました。
おかげさまで助かりました。
大変ありがとうございました。

お礼日時:2003/12/24 22:57

イルカ君に


OnKey メソッド
を聞いてみてください。
VBAの方のヘルプじゃないと出てこないかもしれません。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A