删除Worksheet_Change中的行时发生运行时错误

我有这个代码的问题:

Private Sub Worksheet_Change(ByVal Target As Range) If Target Is Nothing Then Exit Sub MsgBox Target.Value End Sub 

在我向某个单元格input文本后,我收到了一个消息框,但是如果我尝试删除刚刚input文本的行,则会出现错误消息:

运行时错误“13”:types不匹配

我该如何解决这个错误? 为什么这个条件不能抓住它?

当你作为结果删除行时,整个行都是你的过程中的target对象。 因此,您的macros不能够返回该行的值。

程序员通常做的是在你的消息框之前检查的附加条件:

 If Target.Count =1 Then 'your messagebox here End If