ボタンEnter後、タブを移動させたい

タグの編集
投稿者 タンジェント  (その他) 投稿日時 2009/9/2 21:25:26


お世話になっております。

フォーム上のコマンドボタン押下後、コマンドを発生させ、
なおかつ、タブを移動させるにはどうしたらいいでしょうか?
たとえば、

Private Sub Command1_Click()
Text1.Text = Date
End Sub

という、ボタンを押したらテキストボックスに日付が入力されるという
単純なプログラムですが、ボタンを押したら日付が表示され、なおかつ
Text1にタブ移動させるにはどう処理を加えればいいのでしょうか?

Private Sub Command1_KeyPress(KeyAscii As Integer)
        If KeyAscii = vbKeyReturn Then
            KeyAscii = 0
            SendKeys "{TAB}"
        End If
End Sub


を付け加えましたが、うまくいきません。

よろしくお願いいたします。
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/9/2 21:56:12
Text1.SetFocus
で移動できます。

ただし、Text1が使用出来ない場合(EnabledやVisibleがFalseになっている場合など)は、
SetFocus メソッドは失敗します。
投稿者 タンジェント  (社会人) 投稿日時 2009/9/2 22:13:59
>魔界の仮面弁士様

ご回答ありがとうございます!!
魔界の仮面弁士様のアドバイスに基づき、試したところ、
無事、タブ移動できました。

タブコントロールだからタブ移動のコーディングならなんとなる、という浅知恵のため、
セットフォーカス処理について完璧に忘れていました。

本当にありがとうございました。