getLastRow() "не корректно" работает на листе c arrayformula

На листе данные формируются через ARRAYFORMULA, находящиеся в заголовках таблицы. Когда в GAS пытаюсь определить последнюю строку, используя getLastRow(), то последний выдает все количество строк на листе. Такое ощущение, что он считает их заполненными. Как с эти бороться, чтобы можно было использовать getLastRow()? Или единственны вариант писать собственную МЕДЛЕННУЮ функцию по определению последнего ряда?


Ответы (1 шт):

Автор решения: contributorpw

ARRAYFORMULA "растягивается" на весь указанный диапазон, т.о. весь диапазон становится используемым.

  • =ARRAYFORMULA(A1:A100) - getLastRow вернет сотый индекс;
  • =ARRAYFORMULA(A:A) - getLastRow вернет последнюю строку Таблицы.

Это никак не обходится, ARRAYFORMULA - особенная формула.

→ Ссылка