
Gostaria de saber se é possível fazer o Excel funcionar como algumas calculadoras online que vi. Por exemplo:
O principal ponto de diferença é que eles são projetados para que cada 'célula' na calculadora saiba se um valor foi inserido nela - ela calculará condicionalmente seu valor dependendo de sua relação funcional com as outras (ou não) .
Este usa um botão 'calcular', porém existem exemplos com atualização ao vivo no estilo Excel, no caso de valores ainda não suficientes e/ou valores contraditórios eles geralmente indicarão isso, porém, este não é um recurso essencial (ainda ).
Tentei implementar algo semelhante no Excel com condicionais, mas acho que a lógica da célula está ficando muito complexarápido. Não ajudou no meu caso, pois os valores no sistema que estou resolvendo (não o acima) podem ser calculados a partir de diferentes subconjuntos de entradas - você pode dizer que é 'sobredefinido'.
O Excel tem uma opção ou modo que pode construir esse estilo de interface de forma rápida e fácil?
Como alternativa, alguém construiu algo semelhante e gostaria de compartilhar seus truques?
Seria simplesmente para minha própria produtividade (e de outros, espero!), não espero que fique online...
Responder1
Isso pode ser feito da seguinte maneira na planilha do Excel usando VB
Sabemos que o volume de um cubo = comprimento * largura * altura
Vamos fazer uma calculadora para isso:
Dado qualquer 3, o 4º valor deve ser encontrado
Criar planilha do Excel
Em A1, A2, A3 Tipo Comprimento, Largura, Altura. Deixe A4 em branco no volume tipo A5
Agora crie um botão usando a barra de ferramentas e clique com o botão direito no botão e altere o texto para "CALCULAR" para dar o nome necessário ao botão.
Agora clique com o botão direito no botão e atribua macro a este botão Criando o comando On Button Click da seguinte maneira:
Sub Button1_Click()
If Range("B1").Value = 0
Then Range("B1").Value = Range("B5").Value / Range("B3").Value / Range("B2").Value
If Range("B2").Value = 0
Then Range("B2").Value = Range("B5").Value / Range("B1").Value / Range("B3").Value
If Range("B3").Value = 0
Then Range("B3").Value = Range("B5").Value / Range("B2").Value / Range("B1").Value
If Range("B5").Value = 0
Then Range("B5").Value = Range("B1").Value * Range("B2").Value * Range("B3").Value
End Sub
Responder2
Fazer isso com células da planilha pode ser um pouco complicado, como você descobriu.
Mas é bastante fácil fazer isso com VBA. O código pode estar em um evento Worksheet_Change, que pode ser configurado para disparar sempre que qualquer uma das quatro células for alterada.
A lógica então é fácil: se exatamente três células têm um valor, descubra qual célula está vazia, faça o cálculo e coloque o resultado nessa célula.