Найкоротший метод посилання на один рядок / стовпець названого діапазону в Excel?


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. Чи існує більш стислий спосіб вираження цього?

Відповіді:


15

Рядок:

INDEX(UnpivotSource,1,0)

Стовпець:

INDEX(UnpivotSource,0,1)

Зауважте, що це буде працювати лише для суміжних названих діапазонів, є функція індексу для областей діапазону, але це може вийти складним, якщо ви хочете щось інше, ніж перший рядок або стовпець.


Красиво, чудово працює і коротше. Дякую!
техномалогічний

Як ви думаєте, під кришкою xl, якщо я використовую цю техніку, скажімо Макс, вона буде більш ефективною, наприклад, Max("A:A")порівняно з Max(index(myNmdRang,0,1))?
Чому

@whytheq, я думаю, що для великих стовпців Max("A:A")було б найбільш ефективно. Ви можете знову і тест, дивіться тут: stackoverflow.com/questions/198409 / ... .
Ленс Робертс

@LanceRoberts Я тут додав більш детальне запитання щодо SO: stackoverflow.com/questions/36197157/… Ви можете відповісти, оскільки поточна відповідь недостатньо хороша.
Чому
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.