Em vez de usar:
=A1 + A2
use:
=$A$1 + $A$2
isso será copiado sem ajustes.
A célula A1 tem o valor 1. A célula A2 tem o valor 2. A célula A3 tem a fórmula inserida "= A1 + A2" e mostra o valor 3. Da mesma forma Colunas B1, B2, B3, C1, C2, C3, etc .. etc
Eu quero copiar a fórmula (em A3, B3, etc.) para as células A4, B4, etc., de modo que A4 leia "A1 + A2", B4 leia "B1 + B2" etc. Isso pode ser feito?
Talvez a solicitação pareça estranha, mas apenas porque simplifiquei meu projeto para mostrar a essência do problema. Eu preciso fazer isso para verificar se há entrada repetitiva, se alguma da mesma expressão, diga A1 ou A2 ou C3, em mais de uma fórmula.
Em vez de usar:
=A1 + A2
use:
=$A$1 + $A$2
isso será copiado sem ajustes.
A maneira ideal é usar referências absolutas como na resposta do @ Gary's Student. Mas se você não quiser alterar as fórmulas originais, há outras soluções alternativas.
Uma maneira inteligente é copiar todo um intervalo de endereços removendo primeiro o sinal de igual usando Localizar e Substituir (ou substituindo por a=
como sugerido aqui ). Em seguida, copie e cole e, finalmente, altere-o de volta para =
. Isso é ilustrado no Método 3 em link
O que eu usei no passado é a seguinte sequência de chaves:
Agora cole a fórmula inalterada.
Se isso é algo que você precisa fazer com frequência, talvez valha a pena configurar uma macro como essa, que faz as etapas de 1 a 3.
Sub CopyLiteralFormula
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:SetInputMode", "", 0, Array())
dispatcher.executeDispatch(document, ".uno:SelectAll", "", 0, Array())
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
End Sub
Eu brinquei com ele por alguns minutos, mas não consegui fazer o passo 4 automaticamente.