Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Summe + Datum

Forumthread: Summe + Datum

Summe + Datum
11.05.2005 14:40:24
artuk
Hallo alle zusammen,
habe folgendes Problem, habe dieses makro, welches mir die Summe in einer Spalte berechnet. Nun möchte ich, dass nur das summiert wird, was einem bestimmten zeitraum entspricht.
Also z.b:
A--- B--- C ------------------ D (summe nur 2004)
1--- 3--- 01.04.2004
1--- 4--- 01.04.2003
1--- 1--- 01.05.2004 ----4
2--- 5--- 01.06.2004
2--- 6--- 01.07.2003
2--- 7--- 01.04.2004---- 12
Ich hoffe ic habe das verständlich dargestellt.
Hier mein Makro

Sub Rechnentest()
For n = 3 To ActiveSheet.Range("a65536").End(xlUp).Row + 1
If Cells(n, 1) = Cells(n - 1, 1) And Cells(n, 8) >= ("01.01.2004") And Cells(n, 8) <= ("31.12.2004") Then ' habe hier versucht zu selektieren,klappt aber nicht
Summe = Summe + Cells(n - 1, 6)
Else
Summe = Summe + Cells(n - 1, 6)
Cells(n - 1, 12) = Summe
Summe = 0
End If
Next n
End Sub

Danke für die Hilfe
mfg
artuk
Anzeige

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Summe + Datum
11.05.2005 15:04:17
bavariabob
Hallo Artuk,
angenommen die Datumsfelder liegen in G9 bis G14 und die zu addierenden Zahlen in E9 bis F14, dann kannst Du es mit folgender formel lösen.
=SUMMENPRODUKT((JAHR(G9:G14)=2004)*(E9:F14))
Gruss aus München
AW: Summe + Datum
11.05.2005 15:04:33
bavariabob
Hallo Artuk,
angenommen die Datumsfelder liegen in G9 bis G14 und die zu addierenden Zahlen in E9 bis F14, dann kannst Du es mit folgender formel lösen.
=SUMMENPRODUKT((JAHR(G9:G14)=2004)*(E9:F14))
Gruss aus München
Anzeige
AW: Summe + Datum
11.05.2005 15:26:56
artuk
Servus bavariabob,
deine Idee ist nicht schlecht, aber ich brauche unbedingt ein Makro, da ich etwa 40000 Datensätze habe und es etwas automatisieren möchte.
Hast du eine Idee
Danke
artuk
aus Mainz
AW: Summe + Datum
11.05.2005 15:33:03
bavariabob
Hi Artuk,
hilft Dir das weiter?:

Sub findit()
[a2].FormulaLocal = "=SUMMENPRODUKT((JAHR($G$9:$G$14)=2004)*($F$9:$F$14))"
End Sub

Anzeige
AW: Summe + Datum
11.05.2005 15:37:53
artuk
Hi bavariabob,
das ist auch nicht ganz das was ich suche, das Makro muss flxibler sein. Wenn du mein Code anschaust, siehst du, dass bevor summiert wird noch die erste Spalte überprüft wird. Würd gern mit diesem Code auch weiterarbeiten.
Was habe ich bei dort falsch gemacht?
mfg
artuk
Anzeige
AW: Summe + Datum
11.05.2005 15:59:11
UweD
Hallo
das Makro passt nicht zu deinem Beispiel:
In ABCD stehen die Daten laut Beispiel, aber im Makro nutzt du die Spalten 1 (A), 6 (F), 8 (H) und 12 (L)
Wo stehen die Daten denn jetzt?
Gruß Uwe
AW: Summe + Datum
11.05.2005 16:01:13
bavariabob
Artuk,
Spalte A prüfen,
Wenn in Spalte H 2004 steht,
dann die Zahlen in Spalte F addieren.
Das macht Dein Makro und funktioniert problemlos für mich.
Habe ich Deine Frage nicht richtig verstanden?
Anzeige
AW: Summe + Datum
11.05.2005 16:09:01
artuk
@Uwe,
ich weiss dass die Spalten im Makro anders sind als im Beispiel, wollte die Sache etwas vereinfachen. Das spielt aber auch soweit keine Rolle.
@bavariabob
Bei mir addiert er alle Zahlen anstatt nur die mit 2004. Weiß nämlich nicht woran es liegt. Du sagst, mein Code wäre soweit i.O.?
mfg
artuk
Anzeige
AW: Summe + Datum
11.05.2005 17:03:48
UweD
Hallo
Ich vermute den Fehler im Datum vergleich. Der wird bei dir Als Text verglichen und nicht als Datum.
so gehts:

Sub Rechnentest()
Dim Dat1 As Date, Dat2 As Date
Dat1 = "01.01.2004"
Dat2 = "31.12.2004"
For n = 3 To ActiveSheet.Range("a65536").End(xlUp).Row + 1
If Cells(n, 1) = Cells(n - 1, 1) Then
If Cells(n, 8) >= Dat1 And Cells(n, 8) <= Dat2 Then ' habe hier versucht zu selektieren,klappt aber nicht
Summe = Summe + Cells(n, 6)
End If
Else
Cells(n - 1, 12) = Summe
Summe = 0
If Cells(n, 8) >= Dat1 And Cells(n, 8) <= Dat2 Then ' habe hier versucht zu selektieren,klappt aber nicht
Summe = Summe + Cells(n, 6)
End If
End If
Next n
End Sub

Gruß UweD
Anzeige
vielen dank.
11.05.2005 17:28:25
artuk
Hallo uwe,
super sache,klappt wunderbar.
genau daran hats gelegen.
mfg
artuk
Summe + Datum
11.05.2005 21:25:12
bavariabob
Hi Artuk,
musste nach Hause und Damit war Uwe Schneller :-)
Hier meine Lösung

Sub Rechnentest()
For a = 1 To ActiveSheet.Range("a65536").End(xlUp).Row + 1
If Cells(a + 1, 1) = Cells(a, 1) And Year(Cells(a, 3)) = 2004 Then
summe = summe + Cells(a, 2)
Else
If Year(Cells(a, 3)) = 2004 Then
summe = summe + Cells(a, 2)
End If
If summe > 0 And Cells(a, 1) <> Cells(a + 1, 1) Then
Cells(a, 4) = summe
summe = 0
End If
End If
Next
End Sub

Schönen Abend nach Mainz!

Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige