• DİKKAT

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

textbox lar arasındaki tarih farkı

Katılım
29 Haziran 2007
Mesajlar
201
Excel Vers. ve Dili
ofis20007
SLM.arkadaşlar userformun intalize olayına aşağıdaki kodları yazdım.yazdığım yer doğru mu bilmiyorum.ancak yapmak istediğim ;TextBox240 bu günün tarihini gösteriyor,TextBox48 e tarih girdiğimde TextBox239 da iki tarih arasındaki farkı bulup (örnek;9 yıl 10 ay 20 gün) şeklinde çıkmasını istiyorum nasıl yapabilirim?yardımlarınız için tşk.

TextBox240 = Format(Now, "dd.mm.yyyy")'bu gün
TextBox48 = Format(TextBox48, "dd.mm.yyyy")'doğum tarihi
TextBox239 = Format(TextBox239, "dd.mm.yyyy")'aradaki fark
TextBox239.Value = Val(TextBox240.Value) - Val(TextBox48.Value)
 
Dosyayı inceler misiniz ?
 

Ekli dosyalar

Son düzenleme:
SLM
SAYIN ÖZĞRETMEN YAPMIŞ OLDUĞUNUZ ÇALIŞMADA EĞER DOĞUM TARİHİNDEKİ GÜN BUGÜNÜN GÜNÜNDEN KÜÇÜK OLURSA 0 YIL VEYA SACE YIL OLARAK ÇIKIYOR.YANİ SONUCU YANLIŞ HESAPLIYOR.DOĞUM TARİHİNE 01/01/1969 GİRİLİNCE 0 yıl 5 gün VERİYOR,ANCAK12/01/1969 GİRİLİNCE 40 yıl 6 gün VERİYOR.İNCELER MİSİNİZ?
 
Merhaba

Ek dosyayı inceleyiniz...

Kod:
Private Sub CommandButton1_Click()
If TextBox1 = "" Or TextBox2 = "" Then MsgBox "Tarih alanları boş geçilemez.!", vbCritical, "HATA": Exit Sub
If Not IsDate(TextBox1) Then MsgBox "Alanlara tarih değeri giriniz.": Exit Sub
If Not IsDate(TextBox2) Then MsgBox "Alanlara tarih değeri giriniz.": Exit Sub
tarih = TextBox1.Text
tarih1 = TextBox2.Text
ilkgun = Mid(tarih, 1, 2): songun = Mid(tarih1, 1, 2)
ilkay = Mid(tarih, 4, 2): sonay = Mid(tarih1, 4, 2)
ilkyil = Mid(tarih, 7, 4): sonyil = Mid(tarih1, 7, 4)
If ilkgun < songun Then ilkgun = ilkgun + 30: ilkay = ilkay - 1
If ilkay < sonay Then ilkay = ilkay + 12: ilkyil = ilkyil - 1
yil = ilkyil - sonyil
ay = ilkay - sonay
gun = ilkgun - songun
TextBox3 = yil & " YIL " & ay & " AY " & gun & " GUN "
End Sub
 

Ekli dosyalar

Sn: Ayhan Ercan; kodu denedim ancak; tarihi 05.03.2009 fark tarihini de 07.01.1978 şeklinde girdiğimizde çıkan sonuç; 30 YIL 13 AY 28 GÜN bu hatanın nedeni ne olabilir?
 
Bu hata neden oluşuyor arkadaşlar?
 
Sn: Ayhan Ercan; kodu denedim ancak; tarihi 05.03.2009 fark tarihini de 07.01.1978 şeklinde girdiğimizde çıkan sonuç; 30 YIL 13 AY 28 GÜN bu hatanın nedeni ne olabilir?

Merhaba,

Tespitiniz doğrudur. Aşağıda kırmızı renkli satır ile koda ilave yapılmıştır. Tekrar deneyebilirsiniz...

Kod:
Private Sub CommandButton1_Click()
If TextBox1 = "" Or TextBox2 = "" Then MsgBox "Tarih alanları boş geçilemez.!", vbCritical, "HATA": Exit Sub
If Not IsDate(TextBox1) Then MsgBox "Alanlara tarih değeri giriniz.": Exit Sub
If Not IsDate(TextBox2) Then MsgBox "Alanlara tarih değeri giriniz.": Exit Sub
tarih = TextBox1.Text
tarih1 = TextBox2.Text
ilkgun = Mid(tarih, 1, 2): songun = Mid(tarih1, 1, 2)
ilkay = Mid(tarih, 4, 2): sonay = Mid(tarih1, 4, 2)
ilkyil = Mid(tarih, 7, 4): sonyil = Mid(tarih1, 7, 4)
If ilkgun < songun Then ilkgun = ilkgun + 30: ilkay = ilkay - 1
If ilkay < sonay Then ilkay = ilkay + 12: ilkyil = ilkyil - 1
yil = ilkyil - sonyil
ay = ilkay - sonay
gun = ilkgun - songun
[COLOR=red][B]If ilkay - sonay > 12 Then ay = ay - 12: yil = yil + 1
[/B][/COLOR]TextBox3 = yil & " YIL " & ay & " AY " & gun & " GUN "
End Sub
 
SN: Ayhan Ercan; teşekkür ederim şimdi oldu.
 
Geri
Üst