我正在编写一种交叉引用数据库。 ID 是根据选择或创建的文档名称生成的。
我在标题中提到的组合框会根据更改进行操作(在 3 个字母之后),检查数据库中是否有与键入内容类似的条目,并显示匹配选项的下拉列表。一旦从匹配列表中选择了一个条目或创建了一个新名称 - 就会生成适当的编号。
由于在输入每个字母后都会生成下拉列表,因此需要一段时间才能输入所需的内容。我想在最后更改后等待几秒钟来运行宏。
关于如何实现这一目标有什么想法吗?
最佳答案
再次使用Application.OnTime
的替代方案:
在用户表单中:
Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
StartTimer
End Sub
在模块中:
Public RunTime As Double
Public Sub StartTimer()
On Error Resume Next
Application.OnTime EarliestTime:=RunTime, Procedure:="YourCode", Schedule:=False
RunTime = Now() + TimeValue("00:00:03")
Application.OnTime RunTime, "YourCode"
End Sub
Public Sub YourCode()
MsgBox "It's working!"
End Sub
关于vba - 等到用户停止在 ComboBox 中键入即可运行宏 (VBA),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46567132/