SetKeys{"TAB"}用这个试试
在有回车键被按下时处理一下。

解决方案 »

  1.   

    应该是SendKeys{"TAB"},另外也可用例如text1.setfoucus的方法达到同样效果。
      

  2.   

    Private Sub Text9_KeyPress(KeyAscii As Integer)
        If (KeyAscii = vbKeyReturn) Then
            SendKeys ("{TAB}")
        End If
    End Sub快结帖!
      

  3.   

    同意楼上的
    Key_Event也可以
      

  4.   


    SendKeys"{Tab}"Best of luck to you !
      

  5.   

    Private Sub Form_KeyPress(KeyAscii As Integer)
    If KeyAscii = vbKeyReturn Then SendKeys "{TAB}"
    End SubPrivate Sub Form_Load()
    Me.KeyPreview = True
    End Subcommandbox间移动还须设置其command_press事件
      

  6.   

    我还是坚持我的意见,我很早以前解决这个问题的时候发现sendkeys多次的时候会引起系统瘫痪,很多极其都这样,我的方法1)form.preview = true
    2)把相同的控件做成数组
    3)在form的onkeydown中调用peekmessage删除回车事件。
    4)在控件的onkeydown中下一控件setfocus
    5)还可以解决上下左右等等。
      

  7.   

    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
        Dim M As msg
        
        If KeyCode = vbKeyEscape Then
            Unload Me
        ElseIf KeyCode = vbKeyReturn Then
            PeekMessage M, Me.hWnd, 0, 0, PM_REMOVE
        End If
    End Sub
    Private Sub Text1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
        On Error GoTo ErrHAndler
        
        If KeyCode = vbKeyReturn Or KeyCode = vbKeyDown Then
            Text1(Index + 1).setfocus
        ElseIf KeyCode = vbKeyUp Then
            Text1(Index - 1).setfocus
        End If
        Exit Sub
    ErrHAndler:
        '┏━━━━━━━━━┓
        '┃容错处理,把焦点设置在确定按钮上或者text1(0)上
        '┗━━━━━━━━━┛
        If OKButton.Enabled Then
            OKButton.SetFocus  '最上一个文本框中向上
        Else
            Text1(0).setfocus  '最下一个文本框中向下或者输入数据非法
        End If
        Err = 0
    End SubPrivate Sub Text1_ChAnge(Index As Integer) '检查是否都是数字
        Dim I As Integer
        
        For I = 0 To 6
            If Not IsNumeric(Text1(I).Text) Then
                OKButton.Enabled = False
                Exit Sub
            End If
        Next I
        OKButton.Enabled = True
    End Sub...
      

  8.   

    把Form的KeyPress设为true.然后在所有需要把TAB换成Enter的控件事件Private Sub Text_KeyPress(KeyAscii As Integer)    If KeyAscii = 13 Then
            SendKeys "{TAB}"
            KeyAscii=0
        End IfEnd Sub
      

  9.   

    Public Sub EnterToTab(Keyasc As Integer)
        If Keyasc = 13 Then
            SendKeys "{TAB}"
        End If
    End Sub这是我的程序中的一段代码!好用的!不过得在程序中做调用!我想你会做吧!