Eu uso o Excel 2010. Quero usar uma fórmula definida em uma célula como se fosse uma função definida pelo usuário.
Exemplo: Em A1 coloquei algo como (sei que não é uma sintaxe real):
= 3 * Input + 15
E aí no B1 vou usar assim:
= A1(10)
E em C1:
= A1(20)
Prefiro fazer assim e não recorrer a escrever uma função VBA. É possível? Se sim, como?
Obrigado.
Responder1
Uma solução é usar o recurso Tabela de Dados do Excel. A Tabela de Dados é uma das opções de Análise What-If disponíveis (no Excel 2007 - não posso confirmar isso, mas presumo que ainda esteja no Excel 2010). A seguir está um exemplo de como usar esse recurso, que deve ser útil porque o arquivo de ajuda da Microsoft contém poucas instruções IMO.
Para usar seu exemplo, você deseja calcular a fórmula = 3*x+15 para vários valores diferentes dex. Onde B1
contém algum valor fictício dex, insira o seguinte em C2
:
=3*B1+15
Em B3 e abaixo, insira oxvalores que você deseja testar.
Agora que você tem a estrutura da sua tabela de dados, pode realizar uma análise de variações hipotéticas. Selecione toda a estrutura da tabela ( B2:C8
neste exemplo, que inclui os valores e a fórmula). Agora, na faixa de dados, selecione 'Análise What-if' -> 'Tabela de dados...'. Na caixa de diálogo, insira o endereço da célula fictícia à qual sua fórmula se refere no campo de entrada Coluna. (Se sua tabela estiver configurada horizontalmente em vez de verticalmente, você deverá inserir o endereço no campo de entrada da linha.)
Clique em OK e observe que sua tabela está preenchida com os valores de saída apropriados para cada valor de entrada.
Embora esta solução possa não oferecer a flexibilidade que uma UDF ofereceria, acho que ela faz essencialmente o que você está pedindo. Sua fórmula de exemplo é simples e também pode ser preenchida, mas presumo que você tenha motivos para querer usar a fórmula dessa maneira. As tabelas de dados são ideais para situações em que você tem muitos dados que dependem do valor fictício e a fórmula que deseja avaliar para valores diferentes refere-se a esses dados dependentes. Por exemplo, usei esse recurso para gerarCurvas ROCrapidamente calculando a sensibilidade e a especificidade em diferentes limiares.
Responder2
Você pode tentar usar nomes definidos em fórmulas. Depois de definir uma fórmula, você poderá usá-la repetidamente pelo nome. Este recurso foi adicionado para facilitar a reutilização de fórmulas.
Aqui está um link para o site do MS Office sobre comodefinir e usar nomes em fórmulas.
Responder3
Nas funções mais recentes do Excel, você pode criar um suplemento de funções personalizadas do Excel! Ele permite que você definaFunções Node.JSe reutilizá-los.
A Microsoft fornece umbom tutorialsobre como utilizareidegerador de escritório.