执行打印命令后将焦点置于文本框
请帮助我以下情况: 当我通过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
我试过让它成为您的推荐,但光标仍然不会集中在文本框上。 –
这部分代码位于哪个确切的程序?这是一个用户窗体控件事件,如用户窗体中的xy_Click()或xy_Change,还是工作表过程,并在工作表中放置了一个TextBox? –
(2)请编辑您的文章并添加您输出的代码以及引用TextBox1的任何事件代码,例如TextBox1_Change,TextBox1_Click,TextBox1_Exit ... –
你有没有尝试过'TextBox1.SetFocus'?或'Me.TextBox1.SetFocus'? – 0m3r
我已经插入了您的想法,但光标仍然不会集中在Textbox1上。 –
可能重复的[VBA - 如何在文本框中的特定位置设置光标?](https://*.com/questions/28399480/vba-how-to-set-cursor-in-a-specific-position在文本框) – Luuklag