otomatik son kullanma tarihi??

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,503
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
25-12-2029
Merhaba arkadaşlar ekli dosyada da anlatmaya çalıştım üretim tarihi ve miyadını girince textbox 3 e son kullanma tyarihini veren kod u nasıl yazabilirim
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,599
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar

Formunuz kod bölümüne aşağıdaki kodu uygulayıp denermisiniz. Umarım faydası olur.

Kod:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1 = Format(TextBox1, "dd.mm.yyyy")
End Sub

Private Sub TextBox2_Change()
    On Error Resume Next
    If TextBox2 = "" Then TextBox3 = ""
    YIL = Year(TextBox1)
    AY = Month(TextBox1)
    GÜN = Day(TextBox1)
    AY_EKLE = TextBox2
    TextBox3 = Format(DateSerial(YIL, AY + AY_EKLE, GÜN), "dd.mm.yyyy")
End Sub
 

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,503
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
25-12-2029
teşekkürler

Hocam elinize sağlık güzel çalışıyor yanlız bir sorum daha olacak
o miyadı dediğim textboxda 24 Ay yazıyor peki böyle rakam ve harf aynı hücrede yinede o rakam ve ayın aynı olduğu hücrede sadece rakamı alıp son kullanma tarihini yazan bir kod yazabilrmiyiz mümkünmüdür acaba

Not: eğer aklınıza şöyle bir soru gelirse açıklamasını şimdden yapmak istedim gidip 24 ü başka bir stüğna ay kısmınıda yanındaki stüna aldır diyebilirsin ama yaptığım dosyada o bilgileri aslında başka bir yerden alıyor sadece araya bir stün daha eklemek çok karıştıracak işimi bu yüzden böyle bir şey sordum hocam
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,599
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Boş bir modül ekleyip aşağıdaki kodu bu modülün içine uygulayın.

Kod:
Function RAKAMAYIR(Txt As Object)
    For X = 1 To Len(Txt)
    If IsNumeric(Mid(Txt, X, 1)) Then SONUÇ = SONUÇ & Mid(Txt, X, 1)
    Next
    SONUÇ = IIf(SONUÇ = 0, "Rakam Bulunamadı!", SONUÇ * 1)
    RAKAMAYIR = SONUÇ
End Function
Formunuzun kod bölümüne de aşağıdaki kodu uygulayıp denermisiniz.

Kod:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1 = Format(TextBox1, "dd.mm.yyyy")
End Sub

Private Sub TextBox2_Change()
    On Error Resume Next
    If TextBox2 = "" Then TextBox3 = ""
    YIL = Year(TextBox1)
    AY = Month(TextBox1)
    GÜN = Day(TextBox1)
    AY_EKLE = RAKAMAYIR(TextBox2)
    TextBox3 = Format(DateSerial(YIL, AY + AY_EKLE, GÜN), "dd.mm.yyyy")
End Sub
 

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,503
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
25-12-2029
Hocam

Çok teşekkür ederim inanın beni bi sürü zametten kurtardınız bu en son kodunuzla yoksa forma geri dönüp satırlarca kodu değiştirmek zorunda kalacaktım bu ay kelimesini başka bi stüna yazdırabilmek için elinize ve emeğinize sağlık Allah razı olsun
 
Üst