问题:Excel中Textbox控件以及Form里的Textbox控件,当直接填充的内容很长时,滚动条不能实时刷新。
现象:
修改后:
原因:
虽然已经向Textbox的Text里设置了内容,但此时Textbox并没有被激活,焦点也没有变化,所以,Textbox的滚动条没有被刷新出来。
修改后的VBA程序:
-----------------------ActiveX Textbox--------------------------
Private Sub CommandButton1_Click() TextBox1.Value = "safdasfgsdfgfhfgjhfjfghjfhjfg" _
& Chr() _
& "" _
& Chr() ' IF the text length is long enough, ENABLE the Textbox's scroll bar
TextBox1.Activate
' Set the current select line: 0
TextBox1.CurLine = End Sub
-----------------------Form Textbox--------------------------
Private Sub CommandButton1_Click() TextBox1.Value = "safdasfgsdfgfhfgjhfjfghjfhjfg" _
& Chr() _
& "" _
& Chr() ' IF the text length is long enough, ENABLE the Textbox's scroll bar
TextBox1.SetFocus
' Set the current select line: 0
TextBox1.SelStart = End Sub
知识点:
ActiveX Textbox中的 TextBox1.Activate 和 Form Textbox的 TextBox1.SetFocus功能相同