执行打印命令后将焦点置于文本框
请帮助我以下情况: 当我通过vba编写打印命令的代码时,它运行OK。执行打印命令后将焦点置于文本框
但是在运行打印命令后,光标不会集中在文本框上。
我必须使用命令来将光标对焦于文本框? 非常感谢。
If TextBox1.Text = "PRINT" Then ActiveSheet.PrintOut
TextBox1.Value = ""
Call CData
ThisWorkbook.Save
ThisWorkbook.Activate
UserForm1.TextBox1.SetFocus
End If
因为我写在文本扫描条形码的宏,所以我需要自动过程中进行打印后,它可以继续收到文本扫描条形码,没有必须扫描条形码之前单击文本框。
回答:
- 首先检查是否有任何错误消息以及代码的位置(模块,用户表单,工作表或工作簿代码)。
- 您确定您的
If TextBox1.Text = "PRINT"
条件已执行吗?通过插入一个beep
命令,一些Debug.Print
信息的立即窗口或Stop
命令来检查这个命令,允许你通过按F8
来手动检查代码延续。 - 您可以尝试
Windows(ThisWorkbook.name).Activate
而不是只有ThisWorkbook.Activate
,尤其是如果您使用多个工作簿并进行一些选择或激活。 - 如果位于多页控件页面上的文本框应该先激活此页面:
Multipage1.Value = 0
(...)然后通过TextBox1.SetFocus
设置焦点。 - 不要参考:-)
UserForm1.TextBox1.SetFocus
,但使用Me.TextBox1.SetFocus
或TextBox1.SetFocus
:-)如果这是在您的UserForm模块中的代码。 - 你也可以执行你的文本框一个点击()事件,虽然这不是最好的编程风格:
TextBox1_Click
以上是 执行打印命令后将焦点置于文本框 的全部内容, 来源链接: utcz.com/qa/260847.html