有什么用处:
=Cell(contents,x)
为什么不只是:
=X
例如在这种情况下不会:
=INDIRECT(ADDRESS(1,2))
工作原理相同:
=CELL("contents",INDIRECT(ADDRESS(1,2)))
答案1
单元格内容仅返回单元格中的值。这通常是您唯一需要的东西,并且在许多公式中,使用示例中的 =X 就可以了(不过,Cell 函数还可以让您访问有关单元格的更多信息,例如类型等)。
但是间接方式可以让你做更多,因为它不只是传递单元格中的值,而是创建对单元格的引用,然后可以在公式中使用。单元格内容不会让你这样做。
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
因此,如果引用包含多个单元格,则使用该函数与仅引用范围的结果将会有所不同。