Cellwise Start free

Excel guide · 4 min read

How to remove decimals in Excel without rounding

Quick answerUse =TRUNC(B2) to drop every decimal, or =TRUNC(B2,2) to keep two decimals and cut off the rest. TRUNC never rounds: 18.4967 becomes 18 or 18.49, where ROUND would give 18.5. Changing the number format does not remove decimals; it only hides them, and it rounds what you see.

Sample data

Every result on this page was calculated from this sheet by the same spreadsheet engine the Cellwise app uses.

AB
1ItemAmount
2Converted price18.4967
3Fuel (litres)42.879
4Refund-3.79
5Exchange fee0.0659
6Hours billed7.75
7Credit note-12.555
8Unit cost2.999
9Weight (text)12.865

Download this sheet as an Excel practice file (.xlsx)

TRUNC: cut the number, don't round it

The sheet holds amounts with too many decimals: a converted price of 18.4967, 42.879 litres of fuel, a refund of -3.79, an exchange fee of 0.0659. =TRUNC(B2) returns 18. TRUNC simply chops off everything after the decimal point, whatever the digits are.

The second argument says how many decimals to keep. =TRUNC(B2,2) keeps cents and returns 18.49, while =ROUND(B2,2) returns 18.5 because the next digit is 6. =TRUNC(B3,1) gives 42.8 litres. A small value like the 0.0659 fee becomes 0.06 with =TRUNC(B5,2).

A negative second argument cuts to the left of the decimal point: =TRUNC(B3,-1) returns 40. ROUNDDOWN does the same job with the same arguments (=ROUNDDOWN(B2,2) is also 18.49); the only difference is that TRUNC lets you leave out the second argument.

=TRUNC(B2,2)

Result: 18.49

18.49: the 67 at the end is dropped, not rounded up to 18.50.

INT is not the same on negative numbers

INT is often suggested for "remove decimals", and for positive numbers it gives the same answer as TRUNC: =INT(B2) is 18. On negatives it doesn't. INT always goes down the number line, so =INT(B4) turns the -3.79 refund into -4, while =TRUNC(B4) gives -3.

The same trap catches the "multiply, INT, divide" trick for cents. =INT(B7*100)/100 turns the -12.555 credit note into -12.56, a cent more than the original. =TRUNC(B7,2) gives -12.55. If your column can ever contain refunds, credits or losses, use TRUNC.

=INT(B4)

Result: -4

-4, not -3. INT rounds negative numbers away from zero; TRUNC(B4) returns -3.

Get only the decimal part

Sometimes you want the opposite: the part after the decimal point, such as the 0.75 of 7.75 hours. =MOD(B2,1) returns 0.4967, the remainder after dividing by 1. Use it on positive values only.

On negatives MOD gives a surprise: =MOD(B4,1) returns 0.21, not 0.79, because MOD's result always takes the sign of the divisor. Subtract the whole part instead. =B4-TRUNC(B4) returns -0.79, and wrapping it in ABS gives 0.79 if you only need the digits.

=B4-TRUNC(B4)

Result: -0.79

-0.79, the decimal part of -3.79. MOD(B4,1) would say 0.21.

Decimal formats hide digits and round what you see

Home > Decrease Decimal, or a number format like 0 or 0.00, changes only the display. The full value stays in the cell and is used in every sum. Worse, the display is rounded, not cut: 7.75 hours shown with no decimals reads 8, and the 2.999 unit cost shown with two decimals reads 3.00. TRUNC gives 7 and 2.99.

That is why totals look off. =SUM(B2:B8) uses the hidden digits and returns 55.8456, while =SUM(TRUNC(B2:B8,2)) adds the cut values and returns 55.82. Decide which one you need and use a formula when the stored value matters.

If you need the cut value as text, for a label or an export, combine both: =TEXT(TRUNC(B2,2),"0.00") returns 18.49 with exactly two digits.

=TEXT(B6,"0")

Result: 8

8: the format rounds 7.75 up for display. TRUNC(B6) returns 7.

Many cells, text numbers, and no formula at all

In Excel 365, one formula cuts a whole column: =TRUNC(B2:B8,2) spills the results down. In older versions, put =TRUNC(B2,2) in a helper column and fill it down. To replace the originals, copy the helper column, then Home > Paste > Paste Values over column B, and delete the helper.

TRUNC also converts numbers stored as text. The weight in B9 came in as the text 12.865 (ISTEXT(B9) is TRUE), and =TRUNC(B9,2) still returns the number 12.86.

For typed values with no formulas, Find and Replace can remove decimals without a helper column, but it is permanent, so try it on a copy.

  1. Select the cells with the numbers (not formulas).
  2. Press Ctrl+H to open Find and Replace.
  3. In Find what, type .* (a dot and an asterisk). Leave Replace with empty.
  4. Click Replace All. 42.879 becomes 42 and -3.79 becomes -3, because everything from the dot onward is deleted.

Common mistakes

Using INT on negative numbers

INT(-3.79) is -4. Use TRUNC, which always cuts toward zero, when values can be negative.

Decrease Decimal to "remove" decimals

It only hides them and rounds the display (7.75 shows as 8). Sums still use the full value. Use TRUNC in a formula.

MOD(x,1) for the decimal part of negatives

MOD(-3.79,1) is 0.21. Use x-TRUNC(x) for a signed decimal part, or ABS around it.

Find and Replace .* on the wrong cells

It changes the stored values for good and works on typed numbers, not formula results. Work on a copy, or use TRUNC and Paste Values.

FAQ

What is the difference between TRUNC and ROUNDDOWN?

For numbers they return the same result: both cut digits toward zero. TRUNC's second argument is optional and defaults to 0, so =TRUNC(A2) works, while ROUNDDOWN always needs it.

How do I keep 2 decimals without rounding?

Use =TRUNC(A2,2). 18.4967 becomes 18.49. If you also want it to display two decimals, format the cell as 0.00 or Number with 2 decimal places.

How do I remove decimals from a percentage without rounding?

A percentage like 45.78% is stored as 0.4578, so cut it at four decimals, not two: =TRUNC(A2,4) gives 45.78%, and =TRUNC(A2,2) gives 45%.

Is there a shortcut to remove decimals?

Ctrl+Shift+1 applies the Number format with two decimals, and Decrease Decimal on the Home tab hides more. Both only change the display and round it. To change the value itself, use TRUNC.

Functions used

Related guides

Updated