Зачем использовать =Ячейка(содержимое,x) в Excel?

Зачем использовать =Ячейка(содержимое,x) в Excel?

В чем польза:

=Cell(contents,x)

Почему бы просто не:

=X

например, в этом случае не будет:

=INDIRECT(ADDRESS(1,2))

работают так же, как:

=CELL("contents",INDIRECT(ADDRESS(1,2)))

решение1

Содержимое ячейки возвращает только значение в ячейке. Часто это единственное, что вам нужно, и во многих формулах было бы неплохо использовать =X в вашем примере (функция Cell также дает вам доступ к гораздо большему количеству информации о ячейке, например, к типу и т. д.).

Однако indirect позволяет вам сделать больше, так как вместо того, чтобы просто передать значение из ячейки, он создает ссылку на ячейку, которую затем можно использовать в формулах. Содержимое ячейки не позволит вам сделать это.

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функции по сравнению с простой ссылкой на диапазон будет отличаться, если ваша ссылка содержит несколько ячеек.

Связанный контент