Você pode usar OFFSET() para criar uma referência a um intervalo X-a-Y de colunas, por exemplo:
=OFFSET(A1,0,0,10,10) criará uma referência de 10 por 10 que se refere a A1:J10 .
Você pode substituir os 10s codificados na fórmula acima por COUNTIF() , que infere quantas linhas e colunas o intervalo deve se referir.
Para evitar um erro de circularidade, você pode tentar definir um Intervalo Nomeado ( Alt M M D ) com esta fórmula e usando o intervalo nomeado onde quer que você use a fórmula.
Alternativamente, você pode criar uma string de texto com a referência X-by-Y usando OFFSET() sem os parâmetros width e height (ou seja, os 10s da fórmula acima) e, em vez disso, encontrando a primeira e última célula em um alcance. Em seguida, envolva-os em uma chamada CELL("address",...) que retornará seu endereço. (NB: Se o seu ponto de partida é $ A $ 1 você só precisa encontrar a célula final).
Concatene-os com um : entre eles e envolva tudo em torno de um INDIRECT() onde quer que você precise usá-lo. Em suma, supondo uma inicialização codificada em $A$1 :
=INDIRECT("Sheet1!$A$1:"&CELL("address",OFFSET(Sheet1!$A$1,COUNTIF(..x-rows..),COUNTIF(..y-cols..))
COUNTIF() logic para encontrar o número de linhas e colunas restantes como um exercício para o leitor