Maneira de converter referências absolutas em relativas/indiretas?

Maneira de converter referências absolutas em relativas/indiretas?

Existe algum método ou macro que alguém conheça que possa transformar uma fórmula em indireta?

Por exemplo, todas as fórmulas da minha planilha atualmente são escritas como:

=SUM(Sheet2!A1:A10),existe uma maneira de mudar isso rapidamente para uma INDIRECTfunção como:

=SUM(INDIRECT("'Sheet2'!"&"A1"):Sheet2!$A$10)

Não é difícil alterá-lo para uma fórmula, mas para centenas de fórmulas, cada uma contendo de 3 a 4 referências a outras planilhas, levaria muito tempo para corrigir isso.

O problema decorre do fato de estar somando um intervalo, porém cada vez que insiro uma nova linha no topo, a fórmula não se refere às células corretas. Tentando descobrir uma maneira de escrever uma fórmula melhor, para não precisar alterar manualmente o número da linha todas as vezes.

Responder1

Esta macro irá ajudá-lo a localizar e substituir fórmulas na planilha.

Sub FindReplaceFormula()

Cells.Replace What:="=SUM(Sheet2!A1:A10)", Replacement:= _
        "=SUM(INDIRECT("'Sheet2'!"&"A1"):Sheet2!$A$10)", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False

End Sub

Você pode ajustar as referências de células na Fórmula conforme necessário.

informação relacionada