vba 有个textbox控件 按回车键 焦点转移

舞台中央的我 2012-03-02 05:29:11
excel 中 有两个 textbox 控件 在 第一个 textbox 输入完了后 按 回车 (enter ) 焦点转移到 第二个 textbox

求 实现方法 ???、
...全文
872 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
舞台中央的我 2012-03-02
  • 打赏
  • 举报
回复
VBA 不是VB的
贝隆 2012-03-02
  • 打赏
  • 举报
回复

Option Explicit
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Const WM_KEYUP = &H101
Private Const WM_KEYDOWN = &H100
Private Const VK_TAB = &H9

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
PostMessage Text1.hwnd, WM_KEYDOWN, VK_TAB, 0
Sleep 100
PostMessage Text1.hwnd, WM_KEYUP, VK_TAB, 0
End If
End Sub



Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
PostMessage Text2.hwnd, WM_KEYDOWN, VK_TAB, 0
Sleep 100
PostMessage Text2.hwnd, WM_KEYUP, VK_TAB, 0
End If
End Sub

贝隆 2012-03-02
  • 打赏
  • 举报
回复

Option Explicit

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

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

2,503

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧