在change事件中,要求更改后的数值不能为空,若为空则光标仍然停留在单元格内,但是把数值置为空以后,按esc键就能把光标脱离出单元格,求哪位达人能帮忙解决一下。

解决方案 »

  1.   


    Private Sub Text1_KeyPress(KeyAscii As Integer)
        If Len(Text1.Text) = 0 Then
        If KeyAscii = 27 Then KeyAscii = 0
        End If
       
    End Sub
    其实有一个简单的办法,可以在下一个Tabindex控件获得焦点时判断文本框是否为空
      

  2.   

    if target="" then
        Target.Select
    end if
      

  3.   


    感谢您的回复,我是用change事件来做数据的check的,如果加上您的这段代码,要加在什么地方呢,要怎么才能触发呢
      

  4.   

    代码如下:
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Value = "" Then
            MsgBox "input error"
            Target.Select
            Application.SendKeys "{F2}"
        End If
    End Sub这是我写的代码,请帮忙解决