vba - 输入事件后将光标移动到另一个文本框 - VBA
问题描述
请你帮助我好吗?
使用下面的代码,我可以“设置焦点”并更改“Me.txtFT”的“背景色”。
但是,当我试图在“txtPT”上的“Enter”事件之后将光标移动到“Me.txtFT”时,光标没有移动,它一直在“txtPT”上。
我正在使用下面的代码。
Private Sub txtPT_Enter()
If Trim(Me.txtPT.Value & vbNullString) = 0 Then
MsgBox """FT field"" must contain a value before continue. Please try again": _
Me.txtFT.SetFocus: _
Me.txtFT.BackColor = &H80FFFF: _
Exit Sub
End If
End Sub
请你帮助我好吗?
解决方案
条件是测试长度,txtPT
但消息是警告txtFT
,因此从代码中不清楚意图可能是什么。
与其处理控件 B 的入口来验证控件 A 的值,不如考虑处理控件 A 的出口- 并首先取消它并以无效值失去焦点:
Private Sub txtFT_Exit(ByVal Cancel As MSForms.ReturnBoolean)
With txtFT
If Len(Trim(.Text & vbNullString)) = 0 Then
Cancel.Value = True
.BackColor = &H80FFFF
MsgBox "[FT] cannot be empty!"
End If
End With
End Sub
推荐阅读
- sql - 如何为每个员工总结 6 个月范围内 5 年的数据?
- c# - 自动触发 ChecklistBox 项的 BackColor
- apache-flink - 使用 MiniCluster 测试 flink 作业以使用处理时间触发计时器
- c++ - 未声明的标识符,在定义宏以加载 vulkan 函数指针时
- python - GSM SSL 握手 ssl.py
- python - “表有 X 列,但提供了 Y 值”错误
- mysql - 在反应 javaScript 中删除 MySQL 表中的正确条目
- jquery - jquery droppable/html5 api - 如何使元素可拖放和可拖动
- plugins - DjangoCMS 在多个自定义插件中填充模型的数据
- javascript - JavaScript 以相同的格式存储所有 URL(http、https、www。)