Excel VBA質問箱 IV

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

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


7611 / 13646 ツリー ←次へ | 前へ→

【37954】テキストボックスとボタン yuri 06/5/24(水) 10:08 質問[未読]
【37965】Re:テキストボックスとボタン 再送 ichinose 06/5/24(水) 12:38 発言[未読]
【37975】Re:テキストボックスとボタン 再送 yuri 06/5/24(水) 13:52 質問[未読]
【37978】Re:テキストボックスとボタン 再送 ichinose 06/5/24(水) 14:55 発言[未読]
【37979】Re:テキストボックスとボタン 再送--訂正 ichinose 06/5/24(水) 15:01 発言[未読]
【37983】Re:テキストボックスとボタン 再送--訂正 yuri 06/5/24(水) 16:53 お礼[未読]

【37954】テキストボックスとボタン
質問  yuri  - 06/5/24(水) 10:08 -

引用なし
パスワード
   はじめまして。
シート上にテキストボックスとボタン(検索)を作って
テキストボックスに文字入力した後に
マウスを使わずにカーソルをボタンにあわせる方法ってありますか?

文字入力→エンターキー→検索

よろしくお願いします。

【37965】Re:テキストボックスとボタン 再送
発言  ichinose  - 06/5/24(水) 12:38 -

引用なし
パスワード
   ▼yuri さん:
こんにちは。


>シート上にテキストボックスとボタン(検索)を作って
>テキストボックスに文字入力した後に
>マウスを使わずにカーソルをボタンにあわせる方法ってありますか?
>
>文字入力→エンターキー→検索

これは、コマンドバー「コントロールツールボックス」にある
テキストボックスとコマンドボタンの事だとしてよろしですね?

仮に
テキストボックス ---- TextBox1

コマンドボタン  ---- CommandButton1

というコントロール名だとすると、

当該シートのモジュールに

'=============================================================
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  If KeyCode = 13 Or KeyCode = 9 Then
    CommandButton1.Activate
    End If
End Sub


というようにActivateメソッドを使用すると可能です。
尚、コードはEnterキーだけでなく、Tabキーでも

CommandButton1にフォーカスが移るようにしてあります。

試してみてください。

【37975】Re:テキストボックスとボタン 再送
質問  yuri  - 06/5/24(水) 13:52 -

引用なし
パスワード
   ▼ichinose さん:
ありがとうございます。できました。
再度お聞きしたいのですが
CommandButton1にフォーカスが移ったあと、
エンターキーを押すと検索を開始するにはどうすればいいですか?

[TextBox1]  [CommandButton1]

番号(A6) 商品名(B6)
1      いちご
2      とまと
3      メロン
4      りんご

よろしくお願いします。

【37978】Re:テキストボックスとボタン 再送
発言  ichinose  - 06/5/24(水) 14:55 -

引用なし
パスワード
   ▼yuri さん:
>ありがとうございます。できました。
>再度お聞きしたいのですが
>CommandButton1にフォーカスが移ったあと、
>エンターキーを押すと検索を開始するにはどうすればいいですか?

前回投稿したコード(TextBox1_KeyDown)と同じシートモジュールに

'====================================================
Private Sub CommandButton1_Click()
  '検索するコードを記述
End Sub
'======================================================================
Private Sub CommandButton1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  If KeyCode = 13 Then
    CommandButton1 = True
    End If
End Sub

とすれば、OKだと思います。
検索するコードは仕様がわからないので書きませんが・・・。
下記の例から察すれば、MatchやVlookup等を使用すればできそうですね!!


>[TextBox1]  [CommandButton1]
>
>番号(A6) 商品名(B6)
>1      いちご
>2      とまと
>3      メロン
>4      りんご
>
>よろしくお願いします。

【37979】Re:テキストボックスとボタン 再送--訂正
発言  ichinose  - 06/5/24(水) 15:01 -

引用なし
パスワード
   ▼ichinose さん:
>▼yuri さん:
>>ありがとうございます。できました。
>>再度お聞きしたいのですが
>>CommandButton1にフォーカスが移ったあと、
>>エンターキーを押すと検索を開始するにはどうすればいいですか?
>
>前回投稿したコード(TextBox1_KeyDown)と同じシートモジュールに
>
>'====================================================
>Private Sub CommandButton1_Click()
>  '検索するコードを記述
>End Sub
>'======================================================================
>Private Sub CommandButton1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
>  If KeyCode = 13 Then
>    CommandButton1 = True
    keycode=0 'これ入れといてくださいアクティブセルが移動してしまうので  
>    End If
>End Sub
>
>とすれば、OKだと思います。

【37983】Re:テキストボックスとボタン 再送--訂正
お礼  yuri  - 06/5/24(水) 16:53 -

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

うまくいきました。何度もありがとうございました。

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