• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

dogum tarihi hesaplama

Katılım
7 Mayıs 2008
Mesajlar
3
Excel Vers. ve Dili
office 2003
Arkadaşlar merhaba kursa gidiyorum ögretmen sordu ama kimse bilmiyor sormadıgım insan kalmadı soru şu dogum tarihimizi excele yazıyoruz bunu formulle hesaplayacagız ve yaşımızı direk olarak vermesi gerek örnegin 18.08.1976 31 yaşında gibi ama pc deki saat gibi güncel olması lazım bunun formulle yapılması gerek .(agustosun 18 de yaş ilerlemesi gerek )yardımcı olursanız sevinirim şimdiden çok teşekkürler
 
İyi geceler...

Buyrun bir örnek benden... Hemde saati saatine dakikası dakikasına hesaplamak için...

Unutmadan örnek bu Forumdan alınmıştır. Bilgilerinize...

Saygılarımla...
 
Son düzenleme:
Pardon örnek olarak verdiğim program hafta olarak hesaplıyor.. Araştırıyorum..
 
A1 hücresinde doğum tarihi olsun.

Kod:
=YIL((ŞİMDİ()-A1)+1)-1900
 
=YUKARIYUVARLA(YIL(C$1-C3)-1900;0)

Formülü ile yaş bulunuyor. C1 de bugünün tarihi ve C3 de doğum günü tarihi olacak ve aramaya devam
 
=ETARİHLİ(A3;B3;"y") & " YIL " & ETARİHLİ(A3;B3;"ym") & " AY "& ETARİHLİ(A3;B3;"MD") & " GÜN"

A3 ilk tarih--B3 Son tarih olursa yıl ay ve gün olarak sonucu verir..
 
A3 e ilk tarih B3 e son tarih ve herhangi bir hücreyede =Tarihfarkı(A3;B3) yazıp

Programa eklenecek modulede aşağıdaki Function'u yapıştırırsanız yine aynı sonucu alırsınız... sanırım bu da yeterli olur...

Function Tarihfarkı(KüçükTarih As Date, BüyükTarih As Date) As String
Dim years, months, days, m

years = Year(BüyükTarih) - Year(KüçükTarih)
If Month(KüçükTarih) > Month(BüyükTarih) Then
years = years - 1
End If

If Month(B&#252;y&#252;kTarih) < Month(K&#252;&#231;&#252;kTarih) Then
months = 12 - Month(K&#252;&#231;&#252;kTarih) + Month(B&#252;y&#252;kTarih)
Else
months = Month(B&#252;y&#252;kTarih) - Month(K&#252;&#231;&#252;kTarih)
End If

If Day(B&#252;y&#252;kTarih) < Day(K&#252;&#231;&#252;kTarih) Then
months = months - 1
If Month(B&#252;y&#252;kTarih) = Month(K&#252;&#231;&#252;kTarih) Then
years = years - 1
months = 11
End If
End If

days = Day(B&#252;y&#252;kTarih) - Day(K&#252;&#231;&#252;kTarih)
If days < 0 Then
m = CInt(Month(B&#252;y&#252;kTarih)) - 1
If m = 0 Then m = 12
Select Case m
Case 1, 3, 5, 7, 8, 10, 12
days = 31 + days
Case 4, 6, 9, 11
days = 30 + days
Case 2
If (Year(B&#252;y&#252;kTarih) Mod 4 = 0 And Year(B&#252;y&#252;kTarih) _
Mod 100 <> 0) Or Year(B&#252;y&#252;kTarih) Mod 400 = 0 Then
days = 29 + days
Else
days = 28 + days
End If
End Select
End If
Tarihfark&#305; = CStr(years) + " Y&#305;l " + CStr(months) _
+ " Ay " + CStr(days) + " G&#252;n "
End Function
 
Zeki G&#252;rsoy;270126' Alıntı:
A1 h&#252;cresinde do&#287;um tarihi olsun.

Kod:
=YIL((&#350;&#304;MD&#304;()-A1)+1)-1900

bu formulu g&#252;zel a&#231;&#305;klam&#305;s&#305;n copy paste yap&#305;nca oldugunu g&#246;rd&#252;m ama form&#252;l&#252;n a&#231;&#305;klamas&#305; &#246;nemli hoca sorsa a&#231;&#305;klamas&#305;n&#305; biilmiyorum bunu yazma zahmetine girerseniz &#231;ok memnun olurum. benim anlad&#305;g&#305;m kadar&#305;yla tarih hesaplamas&#305;na =YIL D&#304;YORUZ &#350;&#304;MD&#304; yazan b&#246;l&#252;m &#351;u anki zaman dilimi buraya kadar anl&#305;yrum:) sizler bildiginiz i&#231;in hemen formulu yazabiliyorsunuz ama sonucu g&#246;rsem bile mant&#305;g&#305;n&#305; anlamay&#305;nca erkrana bo&#351; bo&#351;bak&#305;yorum &#246;z&#252;r dilerim .
 
Son düzenleme:
Bilindi&#287;i gibi excelde i&#351;lemler en i&#231;erdeki parantezden ba&#351;lar. Her tarihin (saniyesi de dahil) b&#252;y&#252;k say&#305;sal kar&#351;&#305;l&#305;&#287;&#305; vard&#305;r. &#350;&#304;MD&#304;() fonksiyonundan do&#287;um tarihi &#231;&#305;kt&#305;&#287;&#305;nda yine b&#252;y&#252;k bir say&#305; &#231;&#305;kacakt&#305;r.

Neden +1 ekledik?
Ay&#305;n 18 i oldu&#287;unda ya&#351; atlamas&#305; i&#231;in. Yoksa 19'unda ya&#351; atlaycakt&#305;.

YIL fonksiyonuyla say&#305;n&#305;n y&#305;l olarak d&#246;nmesini sa&#287;lad&#305;k. (19?? &#351;eklinde d&#246;ner)
Bundan sonra 1900 &#231;&#305;kar&#305;p ya&#351;&#305; bulduk.
 
Bilindiği gibi excelde işlemler en içerdeki parantezden başlar. Her tarihin (saniyesi de dahil) büyük sayısal karşılığı vardır. ŞİMDİ() fonksiyonundan doğum tarihi çıktığında yine büyük bir sayı çıkacaktır.

Neden +1 ekledik?
Ayın 18 i olduğunda yaş atlaması için. Yoksa 19'unda yaş atlaycaktı.

YIL fonksiyonuyla sayının yıl olarak dönmesini sağladık. (19?? şeklinde döner)
Bundan sonra 1900 çıkarıp yaşı bulduk.

Tşk ederim aklımda soru işareti kalmadı .
 
A1 H&#220;CRES&#304;NE =BUG&#220;N(), B1 H&#220;CRES&#304;NE DE DO&#286;UM TAR&#304;H&#304;N&#304; YAZIN

=ETAR&#304;HL&#304;(B1;($A$1);"y") & " YIL " & ETAR&#304;HL&#304;(B1;($A$1);"ym") & " AY "& ETAR&#304;HL&#304;(B1;($A$1);"MD") & " G&#220;N"
 
teşekkürler yararlandım.
 
Geri
Üst