This has to do with
the way Excel treats numbers.
If you format your result with 10 or more decimals, it is not 7 but 6,99999...
As you formatted with 0 decimals what you see is 7, but XL sees 6,9999
The workaround is to wrap your formula with the ROUND function ( with 0 decimals). Then all should be OK.
Like
Code:
=ROUND((A4-FLOOR(A4,1))*24,0)
A little shorter is
Code:
=ROUND(MOD(A4,1)*24,0)