İki tarih arası günleri bularak ortalama yakıt

Katılım
24 Şubat 2009
Mesajlar
1,070
Excel Vers. ve Dili
2016
Merhaba arkadaşlar, formdaki arkadaşlar sayesinde ekli dosyayı hazırladık, Userform üzerinde bulanan Combolarla araçlarımıza ait iki tarih aralıklarındaki yakıt miktarlarını buluyoruz, ancak şunuda istiyorum, seçilen tarihler arasında gün sayısını bulunak tüketilen yakıt miktarını bu TextBox1 e geliyor, bunun ortalama yakıt miktarını bulmak istiyorum. Örnek 599 plakalı arac için 01.01.2016 ile 20.12.2017 tarihleri arasında bu araç 6276,57 litre yakıt almış, bu tarihler arasıda 719 günde olduğu hesap edildiğinde 6276,57/719=8,73 litre ortalama yakıt tüketmiş bu sonucu TextBox6 yazdırmak ve bütün araçların için seçilen tarihler arasında ortalama yakıt tüketimini bulmak için ekli dosyanın kodunda nasıl bir değişiklik yapılabilir. Herkese teşekkür ederim. İyi geceler
 

Ekli dosyalar

Korhan Ayhan

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

C++:
Private Sub ComboBox3_Change()
sut = 2
aranan = ComboBox3.Text
Plaka_Yakıt_Topla
TextBox1 = toplam
TextBox6 = Format(toplam / (CDate(ComboBox2) - CDate(ComboBox1)), "0.00")
toplam = 0
sut = 0
aranan = Empty
End Sub
 
Katılım
24 Şubat 2009
Mesajlar
1,070
Excel Vers. ve Dili
2016
Merhaba Korhan bey;
Sayın abim, ortalama yakıt için bir aracın alınan yakıtın tamamını bulmak için yani CheckBox1 tuşunun çentiğini kaldırınca "Type Mismatch" hatası verip,
TextBox6 = Format(toplam / (CDate(ComboBox2) - CDate(ComboBox1)), "0.00")
Bu sütun sarı yanıyor, yani tarih seçmeyip bir aracın aldığı toplam yakıt için nasıl yapılmalıdır. Teşekkürler.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,325
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Tarihler olmadığında hata vermesi normaldir. Çünkü gün farkını hesaplıyor.

Hata vermemesi için koda bir IF sorgusu ekleyebilirsiniz. Eski bir katılımcı olarak sanırım bunu sizde yapabilirsiniz.
 
Katılım
24 Şubat 2009
Mesajlar
1,070
Excel Vers. ve Dili
2016
Doğrudur ama bunlar bana çok karışık geliyor bunları pek yapamıyorum. Sizin ve arkadaşların çok yardımı oldu, inkar edem çok teşekkür ederim. İyi geceler.
 

Korhan Ayhan

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

C++:
Private Sub ComboBox3_Change()
    sut = 2
    aranan = ComboBox3.Text
    If CheckBox1 = True Then
        If ComboBox1 = "" Or ComboBox2 = "" Then
            MsgBox "Tarih hatası!", vbCritical
            Exit Sub
        Else
            Plaka_Yakıt_Topla
            TextBox1 = toplam
            TextBox6 = Format(toplam / (CDate(ComboBox2) - CDate(ComboBox1)), "0.00")
            toplam = 0
            sut = 0
            aranan = Empty
        End If
    Else
        Plaka_Yakıt_Topla
        TextBox1 = toplam
        'TextBox6 = 0
        toplam = 0
        sut = 0
        aranan = Empty
    End If
End Sub
 
Katılım
24 Şubat 2009
Mesajlar
1,070
Excel Vers. ve Dili
2016
Cümlem yanlış olmuş "edem" kelimesi "edemem" olacak tekrar teşekkür ederim. İyi geceler
 
Üst