Tarİhe GÖre Toplam Almak

İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,104
Excel Vers. ve Dili
Excel, 365 - İngilizce
E2'ye aşağıdaki formülü yazıp aşağıya doğru kopyalayın.

=EĞER(TOPLA.ÇARPIM(($A$2:$A$10=A2)*($B$2:$B$10)+($A$2:$A$10=A2)*($C$2:$C$10))<>1440;"HATA VAR!";TOPLA.ÇARPIM(($A$2:$A$10=A2)*($B$2:$B$10)+($A$2:$A$10=A2)*($C$2:$C$10)))
 

Korhan Ayhan

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

Alternatif olarak aşağıdaki koduda kullanabilirsiniz.

Kod:
Sub KONTROL()
    Set WF = WorksheetFunction
    Sabit = 1440
    [D2:D65536] = ""
    For X = 2 To [A65536].End(3).Row
    Toplam = WF.SumIf([A2:A65536], Cells(X, 1), [B2:B65536]) + WF.SumIf([A2:A65536], Cells(X, 1), [C2:C65536])
    If Sabit <> Toplam Then Cells(X, 4) = "GÜNLÜK TOPLAMDA HATA VAR !"
    Next
    Set WF = Nothing
    MsgBox "KONTROL İŞLEMİ TAMAMLANMIŞTIR.", vbInformation
End Sub
 
Katılım
6 Ocak 2007
Mesajlar
80
Excel Vers. ve Dili
excell2000
arkadaşlar

Bu makroyu userform üstünde bir commandbutton atayarak listbox ta hatalı olan tarihleri listeyle göstermemiz mümkünmü acaba.yani hücreye yazmasında sadece hatalı olan tarihleri listboxta görüntülesin.
 

Mahmut Kök

Özel Üye
Katılım
14 Temmuz 2006
Mesajlar
878
Excel Vers. ve Dili
Excel 2007 - Türkçe
Hücreye yine yazsın ama kullanıcı formu (userform) üzerindeki liste kutusunda da gözüksün derseniz, bir liste kutusu (listbox) oluşturun ve bu liste kutusunun ' rowsource ' alanına, sayfadaki uyarıları içeren hücre aralığını tanımlayabilirsiniz. Ör.: =sayfa1!G2:H50
 
Katılım
6 Ocak 2007
Mesajlar
80
Excel Vers. ve Dili
excell2000
Sub uyar()

For a = 2 To [a65536].End(3).Row
bir = 0
iki = 0
Top = 0
If Cells(a, "a") = Cells(a + 1, "a") Then GoTo 2
tarih = Cells(a, "a")
For b = 2 To [a65536].End(3).Row
If Cells(b, "a") = tarih Then
bir = bir + (Cells(b, "b") * 1)
iki = iki + (Cells(b, "c") * 1)

End If

Next b
Top = bir + iki
If Top <> 1440 Then
Cells([g65536].End(3).Row + 1, "g") = tarih
Cells([h65536].End(3).Row + 1, "h") = Top
End If
2
Next a


End Sub
malesef yine bir sorun var.Hata d&#252;zeltildi&#287;inde tekrar tu&#351;a bas&#305;ld&#305;&#287;&#305;nda hata yoksa yazd&#305;&#287;&#305; h&#252;creleri temizletebilirmiyiz bu makroya acaba.
 
Katılım
6 Ocak 2007
Mesajlar
80
Excel Vers. ve Dili
excell2000
veya diğerinede olabilir

Sub KONTROL()
Set WF = WorksheetFunction
Sabit = 1440
[hk7:hk65536] = ""
For x = 2 To [a65536].End(3).Row
Toplam = WF.SumIf([A7:A65536], Cells(x, 1), [m7:m65536]) + WF.SumIf([a7:a65536], Cells(x, 1), [n7:n65536])
If Sabit <> Toplam Then Cells(x, 4) = "GÜNLÜK TOPLAMDA HATA VAR !"
Next
Set WF = Nothing
MsgBox "KONTROL İŞLEMİ TAMAMLANMIŞTIR.", vbInformation
End Sub

Bunuda uyguladım ama hatayı düzelttiğim halde hata var mesajı yinede kalıyor elle silmek gerekiyor.
 
Son düzenleme:
Katılım
6 Ocak 2007
Mesajlar
80
Excel Vers. ve Dili
excell2000
dosyayı gönderiyorum

Malesef ben beceremedim userform ÜSTÜNDE GÖRÜNTÜLEMEK İSTİYORUM.A SÜTUNU TARİH M SÜTUNU NET ÇALIŞMA VE N SÜTUNU ARIZA .İLGİLENİRSENİZ SEVİNİRİM.ŞİFRE1214151
 
Üst