Notifications
Clear all

FÓRMULATEXTO - preciso de ajuda para reverter

3 Posts
2 Usuários
0 Reactions
1,361 Visualizações
(@de_nise_)
Posts: 8
Active Member
Topic starter
 

Prezados bom dia,

Estou tentando resvolver uma situação na minha planilha. É que estou tentando realizar memória de cálculo para orçamentos de obras, dessa forma eu gosto de deixar as fórmulas em tabelas e depois converte-las automaticamente para fórmulas na forma didática (ex.: Área (M²) = Largura (M) x Altura (M).

Assim, eu utilizo primeira a função FÓRMULATEXTO() para obter automaticamente as fórmulas que estou utilizando na planilha, e substituo os argumento para a forma que será exibido no texto concatenado. Exemplo:

CÉLULA U171 =(B171*C171)*D171

(os valores são)=21,9*41,9*1=917,61

A PRIMEIRA LINHA SE TORNA COM MINHA FÓRMULA - usando FÓRMULATEXTO(), depois substituindo todos os caracteres pela forma "&" x "&"

="("&B171&" x "&C171&")"&" x "&D171 - esse é o valor armazenado como texto que desejo transformar em fórmula novamente para ser exibido como:

(21,9 x 41,9) x 1

Porém eu não consigo de outra forma q não seja copiando, colando e dando um duplo clique seguido de Enter, pois não achei nenhuma fórmula para reverter a fórmula convertida em texto em fórmula novamente, eu lembrava que a função INDIRETO() era pra algo assim, mas posso estar enganada.

Eu sei que deve ter um jeito mais simples, por favor me ajudem. Grata desde já.

 

 
Postado : 11/06/2021 12:58 pm
(@de_nise_)
Posts: 8
Active Member
Topic starter
 

Salvei em um arquivo separado um pedaço para ajudar a exemplificar.

 
Postado : 11/06/2021 1:00 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 
 
Postado por: @de_nise_

...esse é o valor armazenado como texto que desejo transformar em fórmula novamente para ser exibido como:

(21,9 x 41,9) x 1

Porém eu não consigo de outra forma q não seja copiando, colando e dando um duplo clique seguido de Enter...

Mesmo fazendo o que vc disse (trecho em negrito - grifado por mim), ainda assim não seria suficiente pois teria que inserir o sinal de igualdade antes de tudo e reverter o "x" no operador de multiplicação (asterisco), para ficar como:=(21,9*41,9)*1

Pra fazer uma avaliação de fórmula sem ser pelo cálculo manual como vc está fazendo agora, somente pelo VBA. Aí sim, uma das técnicas poderia ser usando a função Evaluate. Nesse caso, um passo a mais seria também necessário, pois dita função, por operar no sistema americano, aceita apenas o ponto como separador decimal, portanto teria que fazer mais essa substituição.

Não quero lhe desencorajar, mas já adianto que é um esforço monumental querer a todo instante transformar as fórmulas no formato usado pelo Excel para a linguagem humana e vice-e-versa, a menos que não sejam muitas variações...

 
Postado : 11/06/2021 2:11 pm