ZAMAN İşlevinde Saniye Sınırından Kaynaklanan Hatayı Giderme

fotoistanbul

Kullanıcı
Katkı: %0
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhaba,

Bir konuda fikirlerinizi ve desteğinizi almak isterim. A1 hücresine 32767 yazıp, B1 hücresine =ZAMAN(0;0;A1) formülünü ekleyince sonuç olarak: 09:04:37 değeri dönmekte. A2 hücresine ise 32768 yazdığım zaman ve aynı formülü aşağı kopyaladığımda, ise #SAYI! hatası almaktayım.

Böyle bir şey neden olmaktadır acaba, yardımlarınızı rica ederim.

Teşekkürlerimle,
 
Selamlar,

Araştırmalarım çerçevesinde,

Int değişkeni için saklama aralığı
-32768 ile 32767 aralığında olduğundan dolayı...
Yani 2 li sistemde, 2^16 - 1 = 65.536 - 1 = 65.535 Bunun da yarısı Negatif yarısı Pozitif
Bu durumda -32768 ile 32767 arasında Tamsayılar saklanıyor.

32767'den sonra, 32768'i atarsanız, eşdeğer sayı olarak alır.
Yani Negatife düşer ve -32767 olur...
Ya da,
32770 yazarsanız bunun karşılığı da Negatif 32768 den pozitife doğru 3 gidilerek -32765 olacaktır.
Yani, temel olarak, aralığı aşarsanız, alt sınıra geri döner ve devam eder.

Zaten ZAMAN işlevine Microsoft Yardımdan bakarsanız
0 ile 32767 arasında SAYI yazılması limiti var.... Üstünde de hata verecektir.
Çünkü 32768 = -32767 olup NEGATİF sayı olacak ve hata verecektir.

ZAMAN işlevi yerine, 1 gün = 86.400 saniye eşitliğini kullanarak çözüme gidilebilir.

32767 saniye için
zaman(0;0;32767) = 32767 / 86400 = 0,379248 = 09:06:07
32800
saniye için ise
=32800 / 86400 = 0,37963 = 09:06:40 olacaktır.

Yani değeri 86400 e bölün saat olarak karşılığına bakın

86400 den büyükse de 1 günü aşıyor demektir.
Örneğin 90.000
90000/86400 = 1,041667 = 01:00:00 olacaktır. Yani günü göstermeden saati gösterecektir.

Bu durumda 01:00:00 yerine 25:00:00 şeklinde gösterelim derseniz, sayı biçimlendirmesini [ss]:dd:nn şeklinde yapın...

32767 den büyük olsa bile, illa ki, ZAMAN işlevi kullanılacak derseniz eğer formülde biraz düzenleme yapmak gerekecektir...

Kod:
Bu kodu görmek için giriş yapmanız gerekmektedir (1 satır). Giriş Yap

Örnek dosya hazırladım koşullara göre... Bu işlevi de görebilirsiniz dosyada...

Umarım yeterince açıklayabilmişimdir.....
 

Ekli dosyalar

Geri
Üst