Como separar um número pelo seu ponto decimal no Excel / Calc?

10

Eu tenho um número em uma planilha assim: 28.686279

Quando abro esta planilha no LibreOffice Calc ou no Microsoft Excel, existe uma função de fórmula que retorna o "número inteiro", ou seja, 28. Além disso, existe uma fórmula que retorna a "parte decimal", ou seja 0.686279?

hpy
fonte

Respostas:

15

TRUNC() foi projetado para remover a parte decimal de qualquer número imediatamente e sem nenhuma modificação na parte não decimal.

Portanto, conforme a resposta de LinYan , você só precisa usar:

  • TRUNC(A1) para obter a parte inteira do valor em A1
  • A1-TRUNC(A1) para obter a parte fracionária do valor em A1

Ao contrário FLOOR(), TRUNC()funciona em números positivos e negativos sem a necessidade de ajuste e funciona da mesma maneira no Microsoft Excel e no LibreOffice.

FLOOR() requer que o parâmetro de significância tenha o mesmo sinal que o número que está sendo processado (ou então gerará um erro); portanto, 1no final teria que ser alterado -1para processar números negativos, ou você poderá inserir SIGN()e complicar ainda mais a fórmula.

E, no OpenOffice e no LibreOffice, FLOOR()também possui um terceiro parâmetro "mode" adicional (comparado ao Excel) que altera os resultados que a função retorna para números negativos.

DMA57361
fonte
7

você pode tentar a FLOORfunção, floor(A1,1) para parte inteira de A1, A1-floor(A1,1)para parte decimal de A1.

LiuYan 刘 研
fonte
11
Imaginando, por que não existe alguma forma de função FRAC (A1) para recuperar a parte decimal? Parece que é algo que as pessoas fazem com frequência, certo?
Alexis Wilke
Como cerca de Negativos ...
Robert Koritnik
5

Por exemplo, imagine A1 como 167.583:
int(A1)daria 167 e
mod(A1,1)daria 0,583.

Brian554xx
fonte
Você percebe isso int(1.6) === 1e int(-1.6) === -2... Mas trunc(decimal;0)funciona corretamente para ambos.
Robert Koritnik 17/11/16
1

Não pense que há uma função específica para fazer isso, no entanto, aninhando um casal você pode.

Supondo que você esteja tentando retornar o valor à direita do decimal para a célula A1, a fórmula seria:

=MID(A1,SEARCH(".",A1,1)+1,LEN(A1))

Efetivamente, o que você está fazendo aqui é usar a função MID para retornar um número de caracteres começando no ponto decimal. Todas as três referências a A1 precisam ser atualizadas para cada célula que você está direcionando para que funcione corretamente.

Alex Miller
fonte
Isso retorna texto em vez de um número.
fixer1234
-3
=RIGHT(TEXT(ABS(A1)-INT(ABS(A1));",00");2)

isso não seria perfeito e estético também?

Paul Fischer
fonte
Isso retorna texto em vez de um número.
precisa saber é o seguinte