Eu sei que é possível no Excel alternar entre exibir valores e exibir fórmulas . Eu sou obrigado a entregar as tarefas para uma classe de estatísticas como uma folha Excel impressa mostrando tanto a fórmula e o resultado. No momento, o instrutor nos faz copiar a fórmula e colá-la como texto ao lado do valor calculado ou copiar o valor e colá-lo ao lado da fórmula. Isso é muito ineficiente, propenso a erros (se você alterar a fórmula ou os valores depois de copiar e colar) e, geralmente, uma perda de tempo.
Existe alguma maneira de o Excel mostrar a fórmula e seu valor na mesma célula? Caso contrário, existe alguma função que exibirá a fórmula de uma célula referenciada como texto simples, por exemplo, =showformula(A1)
que seria impresso em =sum(A2:A5)
vez de 25
(se essa fosse a fórmula e o valor da célula A1
)?
Estou usando o Excel 2010, mas uma resposta geral que funcione para qualquer edição recente do Excel seria legal.
fonte
GetFormula
não é uma variável, é uma função. Qual versão do Excel você está usando?Aqui está uma maneira de automatizar o que você estava fazendo antes. Ele combina as melhores partes da resposta da LonelyKnight para sua própria pergunta , a resposta de Indrek e a resposta de Billis:
Para cada célula no intervalo especificado (aqui codificado como
A1:G5
), ele copia a fórmula da célula, protegida por um apóstrofo, para uma célula com um deslocamento fixo. (Consulte Como adiciono o VBA no MS Office? Para obter orientação sobre o uso do VBA no Excel.) Lembre-se de executar essa macro antes de imprimir.Ou adicione uma
PrintOut , , , True
declaração logo antesExit Sub
e essa macro imprimirá a folha para você. (Você só precisa se lembrar de imprimir usando essa macro .) O quarto parâmetro para PreviewPrintOut
é configurado para que o Microsoft Excel invoque a visualização de impressão antes de imprimir a folha (oferecendo a opção de cancelar) ou (ou omitido) para imprimir o arquivo. folha imediatamente, incondicionalmente.True
False
Ou, se você estiver realmente preocupado em esquecer de executar isso, pode usar
Private Sub Worksheet_Change
para atualizar as fórmulas exibidas sempre que fizer alguma alteração na planilha.fonte
Talvez interessante notar que a partir de Excel 2013, há uma função nativa para isso:
FORMULATEXT
.Do artigo de suporte dot office dot com sobre a
FORMULATEXT
função:Descrição
Retorna uma fórmula como uma sequência.
Sintaxe
FORMULATEXT (referência)
A sintaxe da função FORMULATEXT possui os seguintes argumentos:
Observações
fonte
Uma alternativa pode estar usando o LibreOffice.
Há uma extensão chamada Exibir fórmula e valor simultaneamente . Deve fazer o que você precisa.
fonte
O suplemento gratuito FormulaDesk pode fazer isso por você, além de exibir a fórmula de uma maneira mais compreensível e identificar erros na fórmula.
Como você pode ver na captura de tela abaixo, é possível visualizar o resultado final da célula, a fórmula original e a exibição explorável aprimorada da fórmula simultaneamente, conforme solicitado.
[Divulgação: Eu sou o autor do FormulaDesk]
fonte
Sei muito pouco sobre programação e minha resposta não é elegante. Como futuro engenheiro, eu precisava de uma função no Excel que pudesse me mostrar a fórmula. O problema que encontrei na solução Indrek é que sua função retorna para mim uma fórmula como esta: "C9 * C9 * pi ()" e eu queria que os nomes das células na exibição da fórmula (C9) fossem alterados para os valores de essas células; e isso mudaria automaticamente sempre que esses números fossem alterados na célula C9 original.
Meu código funciona com fórmulas muito básicas. Eu nunca encontrei algo assim em nenhum outro lugar, pode ajudar alguém ou não. Alguém pode ser capaz de melhorar isso para um nível decente. Como eu disse, funciona para mim e sou um cara prático, com poucas habilidades em programação.
A primeira função não é minha. Foi recuperado de:
fonte
Você pode criar uma coluna adicional contendo as fórmulas: = REPLACE (target_cell; 1; 1; "")
fonte
Aqui está uma solução:
'
) no início da fórmulaIsso funciona.
fonte
Combinar texto com um valor Suponha que a célula A1 contenha o número 9999
Esta fórmula exibirá "Total: US $ 9.999,00"
Outro exemplo que usa a função NOW para exibir texto com a data / hora atual
fonte