输入框,空输入清除单元格

时间:2015-10-23 11:40:04

标签: vba inputbox

我正在尝试创建一个宏来检查单元格是否有变化。如果单元格更改,则用户必须提供日期。按下取消或字段留空时,应清除另一个单元格。当按下取消时,单元格被清除,但是当按下'ok'而没有提供日期时,我收到错误。我的代码如下:

NullReferenceException

1 个答案:

答案 0 :(得分:1)

这是因为您将myvalue声明为日期。如果没有返回任何值,则为日期无法处理的字符串。

将myValue更改为字符串。那么你对myValue = False的检查将变为If myValue =“”then。

Private Sub Worksheet_Change(ByVal Target As Range)

Dim myValue As String

    If Target.Address = "$E$17" Then

        myValue = Application.InputBox("Geef de revisiedatum op, DD/MM/JJ", "Revisie datum")
        Range("$I$17").Value = myValue
        If myValue = "" Then
            Range("$I$17") = ""
            Exit Sub
        End If
    End If

    If Target.Address = "$E$20" Then

        myValue = Application.InputBox("Geef de revisiedatum op, DD/MM/JJ", "Revisie datum")
        Range("$I$20").Value = myValue
        If myValue = "" Then
            Range("$I$20") = ""
            Exit Sub
        End If
    End If
End Sub