2014-11-22 101 views
3

我想獲取excel表格中最後一個非空單元格的單元格地址。基本上我想要最後一個非空單元的行和列號/名稱。我發現很少有人能夠找到最後一個非空單元格的值,但我需要單元格地址而不是內容。如何使用MACROS(VBA)獲得excel中最後一個非空單元格的地址

+0

「最後」的定義是什麼? – GreenAsJade 2014-11-22 13:44:33

+0

假設從A1到D4和下面有一個表格,表示在Excel中沒有低於該值的單元格,那麼D4將是最後一個非空單元格。如果表格下面的Z44有一些值,則最後一個非空單元格將爲Z44。我想使用宏來獲取這個Z44 – 2014-11-22 13:56:34

+0

從你所說的話,你已經知道單元格在哪裏,所以只需要使用'range()。address'而不是'range().value'。並且下一次顯示您已有的代碼 – 2014-11-22 18:56:46

回答

3

對於這樣的數據:

xsdew

大部分的人都想找到細胞:

Sub FindBlue() 
    Dim rng As Range 
    Set rng = Cells.Find(What:="*", After:=Cells(1), SearchDirection:=xlPrevious, searchorder:=xlByRows) 
    MsgBox rng.Address(0, 0) 
End Sub 

如果你想那麼細胞:

Sub FindYellow() 
    Dim rng As Range 
    Set rng = Cells.Find(What:="*", After:=Cells(1), SearchDirection:=xlPrevious, searchorder:=xlByColumns) 
    MsgBox rng.Address(0, 0) 
End Sub 
+0

我可以在兩個函數中獲得行名稱和列名稱嗎?我需要FindBlue和E分別使用C和14,E和7分別使用FindYellow – 2014-11-23 11:02:37

相關問題