8

У меня есть именованный диапазон (NamedRange1), и мне нужно сослаться на первую строку и первый столбец этого диапазона в формуле. Я придумал следующее:

  • Первый ряд:

    INDIRECT("R" & ROW(UnpivotSource) & "C" & COLUMN(UnpivotSource) & ":R"& ROWS(UnpivotSource) +ROW(UnpivotSource) -1 & "C" & COLUMN(UnpivotSource),0)

  • Первый столбец:

    INDIRECT("R" & ROW(UnpivotSource) & "C" & COLUMN(UnpivotSource) & ":R"& ROW(UnpivotSource) & "C" & COLUMNS(UnpivotSource) + COLUMN(UnpivotSource) -1,0)

Это кажется громоздким, особенно если учесть, что объектная модель Excel предоставляет Rows и Columns в VBA. Есть ли более краткий способ выразить это?

1 ответ1

15

Строка:

INDEX(UnpivotSource,1,0)

Колонка:

INDEX(UnpivotSource,0,1)

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .