• ベストアンサー

テキストボックス(VBA)でEnterを押したときに作動するマクロ

Excel2000を使用しています。 VBAで、ワークシート上にあるテキストボックス内にカーソルがある状態で、Enterキーが押されたときに作動するマクロを作りたいのですが、方法が分かりません(ヘルプや翔泳社のVBA辞典も見たのですが、どうもよく分かりません) ちょうど、gooやYahoo!の検索窓のような感じでマクロを動作させたいのですが、どのようにしたら良いでしょうか?ご存知の方、どうか宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.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

noname#148473
質問者

お礼

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

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yomo3
  • ベストアンサー率32% (88/269)
回答No.1

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

すると、全ての回答が全文表示されます。

関連するQ&A

専門家に質問してみよう