TUNCA ERSİN
Altın Üye
- Katılım
- 18 Ağustos 2021
- Mesajlar
- 131
- Excel Vers. ve Dili
- Office Professional plus 2016 Tr
- Altın Üyelik Bitiş Tarihi
- 18-08-2026
Merhaba,
Denersiniz...
C++:Sub Litre_Km() Dim oDict As Object Dim s1 As Worksheet Dim myData As Variant Dim say, i As Integer Dim totalLt As Double, totalKm As Double Dim k Application.ScreenUpdating = False Set s1 = Sheets("Sayfa2") Set oDict = VBA.CreateObject("Scripting.Dictionary") myData = s1.Range("A2:P" & s1.Cells(s1.Rows.Count, "C").End(3).Row).Value For i = LBound(myData, 1) To UBound(myData, 1) If Not oDict.Exists(myData(i, 3)) Then oDict.Add myData(i, 3), say End If Next ReDim myList(1 To UBound(myData, 1) + 1, 1 To 2) For Each k In oDict.keys For i = LBound(myData, 1) + 1 To UBound(myData, 1) + 1 If s1.Cells(i, "C").Value = k Then tmpKm = s1.Cells(i, "P").Value If s1.Cells(i, "I").Value = 0 Then totalLt = totalLt + s1.Cells(i, "E").Value Else totalLt = totalLt + s1.Cells(i, "E").Value If tmpKm > 0 Then totalKm = s1.Cells(i, "I").Value - tmpKm myList(i - 1, 1) = totalKm myList(i - 1, 2) = totalLt totalLt = 0: totalKm = 0: tmpKm = 0 End If End If Next i Next k s1.Range("Q2").Resize(UBound(myData, 1), 2) = myList Set s1 = Nothing: Set oDict = Nothing MsgBox "İşlem tamam...", vbInformation Application.ScreenUpdating = True End Sub
Sy. @dost ;
Hocam
Google E tablolarda nasıl kullanacağım bunu bu kod orada çalışmıyor.
Q sütununa gelen km. şartına sadece Mazot olanlarının şartını getire bilir miyiz.
Son düzenleme: