2012-11-13 149 views

回答

10

This網站使用方法isEmpty()

編輯:從網站抓取的內容,在網址將無效之前。

Worksheets("Sheet1").Range("A1").Sort _ 
    key1:=Worksheets("Sheet1").Range("A1") 
Set currentCell = Worksheets("Sheet1").Range("A1") 
Do While Not IsEmpty(currentCell) 
    Set nextCell = currentCell.Offset(1, 0) 
    If nextCell.Value = currentCell.Value Then 
     currentCell.EntireRow.Delete 
    End If 
    Set currentCell = nextCell 
Loop 

在第一步中,Sheet1第一列中的數據將進行排序。 在第二步中,將刪除具有相同數據的所有行。

42

你可以使用IsEmpty()功能如下:

... 
Set rRng = Sheet1.Range("A10") 
If IsEmpty(rRng.Value) Then ... 

你也可以使用下列內容:

If ActiveCell.Value = vbNullString Then ... 

我不是一個VBA程序員,所以你不會介意?

希望它有助於

+4

你給的IsEmpty()的範圍,而不是價值:

此外,您還可以通過檢查細胞。 它返回true或false,所以你需要一個'if'語句。 你需要寫: 如果爲IsEmpty(rRng)然後 ... 我編輯和糾正答案 – pashute

+2

注意'如果ActiveCell.Value = vbNullString'將在事件失敗的細胞含有錯誤,如#N/A!更好地使用IsEmpty(rRang) – jeffreyweir

+0

@pashute我已經提交了這個答案的編輯,包括你提到的兩個信息。 –

20

IsEmpty()將檢查的最快方式。

IsNull()看起來像一個類似的解決方案,但請記住空必須分配給單元格;它不是固有的在細胞中創造的。

count()

counta()

Len(range("BCell").Value) = 0

相關問題