2012-08-24 196 views
4

我有一個變量,它包含用戶選擇的範圍值。如何檢查變量是否有值?

我該如何檢查它是否有價值?

我已經試過這些:

If variable_name.Value = Empty then .... 

If variable_name.Value = " " then ... 

但這些只是好當變量包含如文本或數字或空格的數據。

有什麼想法?

+0

究竟是什麼問題?你的代碼何時失敗,你想完成什麼? – LittleBobbyTables

+0

我想完成的是「不良用戶保護」。我想檢查這個提到的變量是否有值。它在子程序中獲得它的價值,該子程序旨在如果用戶雙擊特定單元格在特定範圍內進行選擇。因爲如果選擇完成,用戶按下一個按鈕,然後導出選定的數據。所有這些工作正常,我只想檢查按鈕命中,如果該變量應該包含選擇範圍,是否包含它。通過這個,我可以警告用戶在點擊按鈕之前做出選擇! – Gulredy

+0

但是由上面的代碼並不好,因爲如果我將手錶添加到保存範圍的變量中,它將不寫入任何值。甚至不是空的。它仍然包含範圍。 我希望你明白我想說的是什麼...... – Gulredy

回答

10

取決於您正在測試的內容。

範圍對象或單元格值?

Sub test() 

Dim rngObject As Range 
Dim value As Variant 

    Set rngObject = Sheet1.Range("A1:D5") 

    If Not rngObject Is Nothing Then 
    'If not nothing then run this code 
    End If 

    value = rngObject.Cells(1, 1).value 
    If Not IsEmpty(value) Then 
    'if Not empty then run this code 
    End If 

    If value <> vbNullString Then 
    'if value is not nullstring then run this code 
    End If 


End Sub