AccessTr.neT
Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Excel (https://accesstr.net/forum-microsoft-excel.html)
+--- Forum: Excel Cevaplanmış Soruları (https://accesstr.net/forum-excel-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma (/konu-textbox-gun-ay-yil-tarih-toplama-ve-cikarma.html)

Sayfalar: 1 2 3


Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma - malatyalı - 20/03/2021

TOPLAMA
TextBox7 = 1 Yıl 7 Ay 0 Gün
TextBox9 = 10 Yıl 2 Ay 16 Gün
TextBox11 = 11 Yıl 9 Ay 16 Gün

Textbox7 ile Textbox9' da yazan yıl ay gün şeklinde ki tarih biçimini Commandbutton1 ile Textbox11' e toplamak.
ÇIKARMA
TextBox9 = 10 Yıl 2 Ay 16 Gün
TextBox7 = 1 Yıl 7 Ay 0 Gün
TextBox11 = 8 Yıl 7 Ay 16 Gün

Textbox9 ile Textbox7' de yazan yıl ay gün şeklinde ki tarih biçimini Commandbutton2 ile Textbox11' e Çıkarmak
için gerekli makro koduna müsait olan arkadaşlarımızdan yardımcı olmalarını rica ediyorum.
Saygılarımla


RE: Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma - berduş - 20/03/2021

ay ve yıl standart degerleri mi alacak 30 ve 365


RE: Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma - malatyalı - 20/03/2021

ustam
Yıl 360
Ay 30


RE: Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma - berduş - 20/03/2021

Peki verilerin formatı kesin olarak doğru girilmiş olacak mı?
Yani ne bileyim yıl yerine yıl olma olasılığı yada 11 yıl yerine 1 1 yol gibi hatalı yazılma olasılıkları da var mı?

1 1, 2 bir arasında boşluk var


RE: Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma - malatyalı - 20/03/2021

Ustam farklı girilmesi gibi bir durum söz konusu değil.


RE: Textbox (gün Ay Yıl) Tarih Toplama Ve Çıkarma - berduş - 20/03/2021

aşağıdaki fonksiyonu dener misiniz?
toplama için
Function TrhTopla()
Dim Sure1, Sure2
Sure1 = Split(Trim(TextBox7), " ")
Sure2 = Split(Trim(TextBox9), " ")
TSon = (CLng(Sure1(0)) + CLng(Sure2(0))) * 365 + (CLng(Sure1(2)) + CLng(Sure2(2))) * 30 + (CLng(Sure1(4)) + CLng(Sure2(4)))
TextBox11 = TrhDagit(TSon)
' Debug.Print TSon, CLng(Sure1(0)) + CLng(Sure2(0)), CLng(Sure1(2)) + CLng(Sure2(2)), CLng(Sure1(4)) + CLng(Sure2(4))
End Function

Function TrhDagit(ByVal GunSay As Long) As String
Yil = Fix(GunSay / 365)
Ay = Fix((GunSay - Yil * 365) / 30)
Gun = GunSay - (Yil * 365 + Ay * 30)
TrhDagit = CStr(Yil) & " yıl " & Ay & " ay " & Gun & " gün"
End Function
çıkarma için topla işlemindeki + aşağıdaki gibi - yapılıp metin kutularının adını değiştirmeniz yeterli
TSon = (CLng(Sure1(0)) - CLng(Sure2(0))) * 365 + (CLng(Sure1(2)) - CLng(Sure2(2))) * 30 - (CLng(Sure1(4)) + CLng(Sure2(4)))