# Show decimals only if the cell has while showing custom text in Excel

I have a row of cells with numeric values. I'd like to produce the following effect:

``````---------------------------
|Cell value | Cell result |
---------------------------
|2          | 2 kg        |
|1.43       | 1.43 kg     |
|9.5764     | 9.58 kg     |
|3.2        | 3.2 kg      |
---------------------------
``````

Basically,

• I want them to always show "kg" after the value that is entered.
• Any decimal value entered need to be rounded up to 2 decimal places; if there are no decimal places, it's going to show the whole number.

I've formatted cells to `0" kg"`so it always show the kilograms.

As for showing only decimals if necessary, I've used the formula `=ROUND(X, 2)` on each cell to only show two decimals (X being the value I introduce).

Question: However when I type `=ROUND(2.5, 2)` it displays `3 kg` instead of `2.5 kg`. Why is it? Do you have other possible solutions?

Edit 1

I've changed the cell formatting to `0.##" kg"` and it works just like I want. Now the problem is if I use `=ROUND(10, 2)` it displays `10. kg` with that additional point right after the number.

• try =FIXED(10,2) – strobelight Sep 26 '16 at 1:17
• Just changing that doesn't work. After applying it, it shows 10.00 kg. – Alejandro Nava Sep 26 '16 at 1:53 ``````=IF(RIGHT(FIXED(B1,2),3)=".00",CONCATENATE(INT(B1)," kg"),IF(RIGHT(FIXED(B1,2),1)="0",CONCATENATE(FIXED(B1,1)," kg"),CONCATENATE(FIXED(B1,2)," kg"))) 