%EF%BC%9F.png)
有什麼用處:
=Cell(contents,x)
為什麼不只是:
=X
例如在這種情況下不會:
=INDIRECT(ADDRESS(1,2))
工作方式與以下相同:
=CELL("contents",INDIRECT(ADDRESS(1,2)))
答案1
儲存格內容僅傳回儲存格中的值。這通常是您唯一需要的東西,並且在許多公式中,在您的示例中使用 =X 就可以了(單元格函數還可以讓您訪問有關單元格的更多信息,例如類型等)。
然而,間接可以讓您執行更多操作,因為它不只是傳遞儲存格中的值,而是建立對儲存格的引用,然後可以在公式中使用該引用。單元格內容不允許你這樣做。
Cell 會讓你這樣做:
A1="thing I'm looking up"
=vlookup(cell.contents("contents",A1), myRange,1,false)
甚至這個:
A1="B2"
B2="thing i'm looking up"
=vlookup(cell.contents("contents",indirect(A1)), myRange,1,false)
但它不會讓你這樣做:
A1="B3:C5"
vlookup("thing I'm looking up in " & A1, indirect(A1), 1, false)
您可以使用 A1 中儲存的位址作為公式中使用的參考。儲存格僅允許您使用該值,而不能作為參考。
答案2
CELL("contents",...)
回報
參考中左上角單元格的值;不是一個公式
(https://support.office.com/en-us/article/cell-function-51bd39a5-f338-4dbe-a33f-955d67c2b2cf)
CELL
因此,如果您的參考包含多個儲存格,那麼使用函數與僅引用一個範圍的結果將會有所不同。