Soru Textbox

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,534
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
Değerli Arkadaşlar
Userformda
1. Sorum :
Textbox1 1. Çocuğun Adı Soyadı
Textbox2 1. Çocuğun Doğum Tarihi
Textbox3 1. Çocuğun Doğum Tarihine göre yaşını nasıl hesaplayabiliriz?

Textbox4 2. Çocuğun Adı Soyadı
Textbox5 2. Çocuğun Doğum Tarihi
Textbox6 2. Çocuğun Doğum Tarihine göre yaşını nasıl hesaplayabiliriz?

Textbox7 3. Çocuğun Adı Soyadı
Textbox8 3. Çocuğun Doğum Tarihi
Textbox9 3. Çocuğun Doğum Tarihine göre yaşını nasıl hesaplayabiliriz?
2. Sorum :
Textbox10'a Textbox1, Textbox2 ve Textbox3 e isim girince sayısını nasıl alabiliriz?

Örneğin 3 gibi

Teşekkür eder, saygılarımı sunarım
 

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,534
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
dalgalikur
Allah yar ve yardımcın olsun inşallah. Ellerine Sağlık. Teşekkür ederim.

Doğum yaşlarının yer aldığı textboxta sıkıntı var Üstad.
Adı soyadı girip, Doğum tarihini belirlediğim zaman yaş vermiyor.
Bakabilir misiniz?
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,702
Excel Vers. ve Dili
2021 Türkçe
Doğum yaşının seçimi yapılan kontrol TextBox değil DTPicker.

Muhtemelen "DTPicker" nesnesinden gün seçimi yapmadığınız için yaş hesaplamıyor.
Tarih içinde yıl, ay seçtikten sonra gün de seçilmesi gerekiyor.
Gün seçimi yaptıktan sonra yaş hesaplıyor.

Ayrıca kodlarda başka bir hata vardı onu giderdim.
Önceki kodların tamamını silip aşağıdakileri kullanın.

Kod:
Option Explicit

Private Sub DTPicker1_Change()
    YasHesapla DTPicker1, TextBox3
End Sub

Private Sub DTPicker2_CallbackKeyDown(ByVal KeyCode As Integer, ByVal Shift As Integer, ByVal CallbackField As String, CallbackDate As Date)
    YasHesapla DTPicker2, TextBox6
End Sub

Private Sub DTPicker3_CallbackKeyDown(ByVal KeyCode As Integer, ByVal Shift As Integer, ByVal CallbackField As String, CallbackDate As Date)
    YasHesapla DTPicker3, TextBox9
End Sub

Sub YasHesapla(DogumTar As Date, txt As Control)
    txt.Text = (Year(Now) - Year(DogumTar)) - IIf(Month(Now) < Month(DogumTar), 1, 0) - IIf(Month(Now) = Month(DogumTar), IIf(Day(Now) < Day(DogumTar), 1, 0), 0)
End Sub

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    CocukSay
End Sub

Private Sub TextBox4_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    CocukSay
End Sub

Private Sub TextBox7_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    CocukSay
End Sub

Sub CocukSay()
    Dim bir, iki, uc As Byte
    If TextBox10.Text = Empty Then TextBox10.Text = 0
    If Not TextBox1.Text = Empty Then bir = 1
    If Not TextBox4.Text = Empty Then iki = 1
    If Not TextBox7.Text = Empty Then uc = 1
    TextBox10.Text = bir + iki + uc
End Sub

Private Sub UserForm_Initialize()
    TextBox10.Text = 0
    TextBox3.Text = 0
    TextBox6.Text = 0
    TextBox9.Text = 0
End Sub
 

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,534
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
dalgalikur
Teşekkür ederim. Sağ ol. Hakkını Helal et.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,702
Excel Vers. ve Dili
2021 Türkçe
Helal olsun. Allah senden de razı olsun.
O güzel duaların için ben de teşekkür ederim.
 
Üst