检查单元格是否为空Excel VBA

时间:2013-09-12 14:10:07

标签: excel vba excel-vba

如果用户编辑之前为空的单元格,我正在编写Excel宏以显示警告。基本上,如果编辑单元格,在第1列,并且已经包含文本我想显示警告但是如果它已经没有文本,我不想。

所以我试过的是以下

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 1 And Not IsEmpty(Cells(Target.Row,Target.Column)) Then
        Application.EnableEvents = False
        MsgBox "Some Message"
        Application.EnableEvents = True
    End If
End Sub

我遇到的问题是当我收到单元格以查看它是否为空时,它将永远不会返回,因为用户刚刚添加了它。

所以我想知道是否有一种简单的方法来检查该单元格的先前状态。我想知道单元格是否为空。这可能吗?

1 个答案:

答案 0 :(得分:4)

您可以使用Worksheet_SelectionChange事件来捕获用户在变量中选择的单元格的值,该值在进行任何更改之前发生。

然后,当Worksheet_Change被触发时,您可以引用该变量。