Se eu tiver 3, isso se torna 3.000. 4,5678 torna-se 4,568. É possível fazer isso no Excel sem fornecer a planilha ou fornecer um exemplo reproduzível? Desejo formatar uma planilha inteira do Excel para que haja apenas 3 dígitos após as casas decimais ou descobrir uma maneira de corrigir o número de algarismos significativos em cada célula da planilha.
Selecione toda a planilha e aplique o formato desejado:
(você pode fazer a mesma coisa com uma macro VBA.)
Se você deseja FORMATAR os dados, mas não alterá-los, a solução é uma solução em duas partes.
A primeira parte é aplicar o seguinte formato a todas as células com dados. Adotar a abordagem do aluno de Gary é perfeitamente adequado para realizá-la fisicamente. Aqui está o formato a ser aplicado:
Com isso, você obtém separadores de vírgula para os milhares e assim por diante. Solte a entrelinha
#
e a vírgula se isso não for desejado. Em seguida, garante que você obtenha uma liderança0
para valores entre 1 e -1 (portanto, você teria " 0,123 ", não " ,123 "). Se isso não for desejado, use outro#
em vez de0
( #,###.### não #,##0.### ).A mágica está no fato de que o
#
usado após o ponto decimal faz com que ocorra 1 casa decimal para cada usadoBUT ONLY
, se isso não produzir uma string de0's
. Portanto, um valor como PI dará 3,142 e um valor como 5,202384 dará 5,202 (ele percebe que o0
in é necessário porque há mais casas decimais diferentes de zero depois dele), mas um valor como 28,2 dará exatamente isso, não 28,200, porque vê que os dois últimos0's
são apenas fofos.Lembre-se de que NÃO NÃO NÃO está seguindo nenhuma regra sobre
significant figures
. É apenas decidir o que exibir.Porém... tem um efeito feio. Um número como 324 exibirá um ponto decimal depois dele: "324". que ninguém gosta. Então o que fazer? Afinal, esse é o único problema real neste momento.
Essa é a parte dois da solução. Aplique a formatação condicional às mesmas células realçadas. Configure-o para funcionar a partir de uma fórmula e use esta fórmula:
(Isto pressupõe que a célula ativa ("célula realçada") é A1. Caso contrário, use qualquer que seja a célula real.)
Observe que NÃO há
$
caracteres nesse endereço: A1 não, digamos, $A$1 . Isso é importante. Se você tiver a célula ativa como A1 e usar a fórmula acima, ela testará cada célula contra si mesma, que é o que você deseja.A fórmula corta o valor na célula em seu ponto decimal e compara esse resultado com o valor real na célula. Portanto, se for um número inteiro, eles são iguais e ele sabe aplicar o formato aqui para evitar que aquele ponto decimal desagradável apareça. Se o valor real não for um número inteiro, o teste dá FALSE e permite que seja usado o formato regular da primeira parte mostrando até três casas decimais.
Depois de inserir a fórmula, você deve definir um formato. Mas é exatamente como você quer agora, então clique no botão formatar, depois clique em OK e pronto. As pessoas às vezes me dizem que não funcionou para a versão do Excel e, se for o caso, aplique o formato numérico personalizado de:
Geral;Geral;Geral;Geral
e isso VAI funcionar. Portanto, tente o mais fácil primeiro, depois faça isso apenas se necessário. Ou apenas faça. Que diabos, hein?
Salve o trabalho de formatação condicional e pronto.
(Isso parece complicado, mas é apenas porque expliquei o que as etapas fazem. Na realidade, existem apenas duas operações de formatação curtas a serem executadas, uma regular e outra em formatação condicional
so it is quite quick and easy to do.
)