wlbk.net
当前位置:首页 >> ExCEl vBA 如何让工作表tExtBox回车后失去焦点 >>

ExCEl vBA 如何让工作表tExtBox回车后失去焦点

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = 13 Then '判断按下的键是否为回车 ActiveCell = TextBox1.Value '给活动单元格赋值 ActiveCell.Select '选中活动单元格 End IfEnd SubPS:不同版本的excel可能略有区别,自己对照帮助做相应修改.

VBA在执行关闭前再执行一条Cells(4, 5).Select

exit 事件是焦点将要失去时触发,个人建议可以换个事件,比如keyup、keypress等按键事件,来解决,

将textbox1的两个属性:EnterKeyBehavior 和 MultiLine 设为True即可

forms("userform1").textbox1.setfocus强制让焦点回到这个窗体的一个object上

Private Sub TextBox1_KeyDown If KeyCode = 13 Then '如果回车 '判断textbox的最后一个字符是不是英文,如果是则响应 elseif keycode=32 then '如果空格 '判断textbox的最后一个字符是不是中文,如果是则响应 end ifEnd Sub判断代码自己写

Private Sub CommandButton1_Enter() '得到焦点显示aMsgBox "a"End SubPrivate Sub CommandButton1_Exit(ByVal Cancel As MSForms.ReturnBoolean) '得到焦点显示bMsgBox "b"End Sub

回车激发事件好像不可以用在单元格吧!所以你就只能用楼上的那个代码

工作表没有KEYPRESS事件,但按下回车时,单位远格的选区会改变,所以可以利用工作表的Worksheet_SelectionChange事件作如下编程:Private Sub Worksheet_SelectionChange(ByVal Target As Range) ThisWorkbook.SaveEnd Sub

确定按钮肯定需要做的 然后把确定按钮 赋值给enterSendKeys "{ENTER}"或者你在textbox1 中做一个change事件 应该也可以 例如:Private Sub TextBox1_Change()n = Sheet3.[a65535].End(3).Row + 1If Len(TextBox1.Value) = 6 ThenSheet3.Range("a" & n) = TextBox1.ValueTextBox1.Value = ""End IfEnd Sub

网站首页 | 网站地图
All rights reserved Powered by www.wlbk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com