Como posso copiar a fórmula usada em uma célula para outra célula como uma fórmula literal

1

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.

    
por WDR 03.06.2017 / 12:07

3 respostas

0

Em vez de usar:

=A1 + A2

use:

=$A$1 + $A$2

isso será copiado sem ajustes.

    
por 03.06.2017 / 17:15
0

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:

  1. Edite a fórmula: F2
  2. Selecione a fórmula: Ctrl + a
  3. Copie a fórmula: Ctrl + c
  4. Saia da fórmula: Esc

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.

    
por 04.06.2017 / 00:44
0

1)SelecioneA3:C3,Ctrl+C

2)SelecioneA4,Ctrl+V

3)Ctrl+X

4)SelecioneA5,Ctrl+V

5)Ctrl+C

6)SelecioneA4,Ctrl+V

Depoisdisso,A4:C4éomesmoqueA3:C3,EpodemoslimparA5:C5,senecessário:

    
por 04.06.2017 / 02:03