Como manter uma fórmula matemática não avaliada em uma célula do Excel e avaliá-la em outra célula?

Como manter uma fórmula matemática não avaliada em uma célula do Excel e avaliá-la em outra célula?

Quero ter duas células no Excel:

Na primeira delas (fx A1) quero ter uma equação como 2 + 2
Na segunda (fx A2) quero ter a solução = 4.

Como eu posso fazer isso?

Responder1

Primeiro insira a seguinte UDF em um módulo padrão:

Public Function eval(strng As String) As Variant
    eval = Evaluate(strng)
End Function

então em A2 digite:

=avaliação(A1)

Funções definidas pelo usuário (UDFs) são muito fáceis de instalar e usar:

  1. ALT-F11 abre a janela VBE
  2. ALT-I ALT-M abre um novo módulo
  3. cole o material e feche a janela do VBE

Se você salvar a pasta de trabalho, a UDF será salva com ela. Se você estiver usando uma versão do Excel posterior a 2003, deverá salvar o arquivo como .xlsm em vez de .xlsx

Para remover a UDF:

  1. abra a janela VBE como acima
  2. limpar o código
  3. feche a janela do VBE

Para usar a UDF do Excel:

=minhafunção(A1)

Para saber mais sobre macros em geral, consulte:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

e

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

e

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

para detalhes sobre UDFs

As macros devem estar habilitadas para que isso funcione!

Responder2

Talvez você não consiga fazer exatamente o que deseja usando uma função de planilha, isso érespondido aquie isso por design.

Você pode conseguir isso com VBa (e sua postagem não indica usar VBa ou não, então presumo que não) ou você couldprocura o antigo XLM GET.FORMULA() mas VBa é melhor (e não sei nada sobre XLM)

Você pode ser capaz de fazer algo como

=FORMULATEXT(formulaCell)      

FORMULATEXT requires the morefunc.xll add-in. 

Fonte


No entanto, como solução alternativa e com base no exemplo exato da sua pergunta, você poderia fazer o seguinte (que funciona)

=SUM(LEFT(A1,1),RIGHT(A1,1))

Isso só funcionará quando a fórmula for N+N (onde N é 1 dígito), mas dependendo de quantas linhas de dados você possui, isso pode atender às suas necessidades!

insira a descrição da imagem aqui

informação relacionada