Yanıtlar:
TRUNC()
herhangi bir sayının ondalık kısmını hemen ve ondalık olmayan kısımda herhangi bir değişiklik yapmadan çıkarmak için tasarlanmıştır.
Yani, LinYan'ın cevabına göre , sadece kullanmanız gerekir:
TRUNC(A1)
değerin tamsayı kısmını elde etmek için A1
A1-TRUNC(A1)
değerin kesirli kısmını elde etmek A1
Bunun aksine FLOOR()
, TRUNC()
ayarlama gerektirmeden hem pozitif hem de negatif sayılar üzerinde çalışır ve Microsoft Excel ve LibreOffice'te aynı şekilde çalışır.
FLOOR()
anlamlılık parametresinin işlenen sayıyla aynı işarete sahip olmasını gerektirir (veya başka bir hata atar), bu nedenle 1
sonunda -1
negatif sayıları işlemek için değiştirilmek zorunda kalır veya SIGN()
formülü ekleyebilir ve gereksiz yere karmaşık hale getirebilirsiniz .
Ve OpenOffice ve LibreOffice'te, FLOOR()
işlevin negatif sayılar için döndürdüğü sonuçları değiştiren ek (Excel ile karşılaştırıldığında) üçüncü "mod" parametresi de vardır.
A1'in tamsayı kısmı için A1'in ondalık kısmı FLOOR
işlevini deneyebilirsiniz .floor(A1,1)
A1-floor(A1,1)
Örneğin, A1'in 167.583 olduğunu hayal edin:
int(A1)
167 verecek ve
mod(A1,1)
0.583 verecekti.
int(1.6) === 1
ve int(-1.6) === -2
... Ama trunc(decimal;0)
her ikisi için de doğru çalışıyor.
Bunu yapmak için belirli bir işlev olduğunu düşünmeyin, ancak bir çift iç içe yerleştirerek yapabilirsiniz.
A1 hücresi için ondalık sağ değerini döndürmeye çalıştığınızı varsayarsak, formül şöyle olur:
=MID(A1,SEARCH(".",A1,1)+1,LEN(A1))
Burada etkili bir şekilde yaptığınız şey ondalık noktadan başlayarak bazı karakterleri döndürmek için MID işlevini kullanmaktır. A1'in 3 referansının da, düzgün çalışabilmesi için hedeflediğiniz her hücre için güncellenmesi gerekir.
=RIGHT(TEXT(ABS(A1)-INT(ABS(A1));",00");2)
bu da mükemmel ve estetik olmaz mıydı?