Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1640to1644
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Addition jeder n-ten Zeile in variablen Bereich

Addition jeder n-ten Zeile in variablen Bereich
03.09.2018 15:51:44
Jessi
Hallo zusammen !
Ich habe ein kleines Problem.. und zwar möchte ich jede 5. Zeile in einer Spalte addieren. Ich habe eine Gruppe, die aus mehreren Elementen mit den Untergruppen a,b,c,d,e bestehen. Wichtig ist hier eigentlich nur, die Spalte C. Sie hat prinzipiell immer den gleichen Aufbau:

Bezeichnung

a
b
c
d
e

summe a
summe b
summe c
summe d
summe e
Fortschritt
Das Problem ist, dass die Anzahl der Elemente a,b,c,d,e variabel ist.
Das bedeutet, dass nur einmal die Zeilen a,b,c,d,e vorkommen können, aber auch x-mal.
z.B.
Gruppe 123 (Spalte A) hat 7 Elemente (Spalte B), die jeweils a,b,c,d,e (Spalte C)enthalten
Gruppe 789 hat nur 4 Elemente, die jeweils a,b,c,d,e enthalten. Es soll bei Summe a jedoch nur die Summe der jeweiligen Gruppe berechnet werden (also von "Bezeichnung" bis "Fortschritt") mit egal wievielen Elementen.
Deshalb habe ich bereits folgenden Code geschrieben, der einen Bereich zwischen "Bezeichnung" _ und "Fortschritt" eingrenzt:
With Workbooks("Zieltabelle.xlsm").Worksheets("Tabelle1")
LZZiel = .Cells(Rows.Count, 3).End(xlUp).Row
For I = 1 To LZZiel
If .Cells(I, 3).Value = "Bezeichnung" Then
Startzeile = I
For J = I To LZZiel
If .Cells(J, 3).Value = "Fortschritt" Then
Endzeile = J
For Startzeile = Startzeile + 1 To Endzeile Step 5 '+1 damit in Zeile "a"
Summe = Summe + Cells(Startzeile, 4)
Next
.Cells(Endzeile - 5, 4) = Summe '-5 damit in Zeile "Summe a"
Exit For
End If
Next J
Exit For
End If
Next I
End With

Nun werden jedoch immer alle Gruppen durchlaufen und miteinander verrechnet. Die Summe jeder 5.Zeile soll aber immer gruppenweise berechnet werden. Leider komme ich nicht auf meinen Fehler. Ich hoffe, ihr könnt mir helfen & Danke im Voraus !
Viele Grüße
Christina

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Beispielmappe bitte
03.09.2018 21:00:14
Werner
Hallo Jessi,
sorry, aber mit der Beschreibung verstehe ich im Moment nur Bahnhof. Schätze mal das geht anderen auch noch so, weil noch niemand reagiert hat.
Vorschlag: Erstell eine Beispielmappe mit ein paar Beispieldaten in der du dann aufzeigst, wie dein Ergebnis warum aussehen soll.
Im Moment hört sich das für mich eigentlich nach einer Zählenwenns-Formel an.
Gruß Werner
AW: Addition jeder n-ten Zeile in variablen Bereich
04.09.2018 09:54:56
Jessi
Ich habe es geschafft :)
Es sollte jede 5. Zeile addiert werden solange bis die nächste Gruppe anfängt. Eine Gruppe besteht aus x-mal dem Block mit 5 Zeilen:
a
b
c
d
e
Dadurch ist eine Gruppe aufgebaut durch:
Bezeichnung
a
b
c
d
e
_
a
b
c
d
e...
_
Summea
summeb
Summec
summed
summee
Fortschritt

Das kursiv geschriebene ist ein Block. Er kann beliebig oft vorkommen zwischen "Bezeichnung" und Summea. Eine Gruppe beginnt immer mit "Bezeichnung" und endet immer mit "Fortschritt". Es können beliebig viele Gruppen im Tabellenblatt mit beliebig vielen "Blöcken" (a,b,c,d,e) stehen. Ziel war es das "Summenprodukt" eines jeden a, eines jeden b etc. PRO GRUPPE zu berechnen und in die jeweilige Summen-Zeile zu schreiben.
Hier nochmal falls jemand verstanden hat, was ich meinte:
For I = 1 To LZZiel
If .Cells(I, 3).Value = "Bezeichnung" Then
Startzeile = I
For J = I To LZZiel
If .Cells(J, 3).Value = "Fortschritt" Then
Endzeile = J
Summea = 0
For Startzeile = Startzeile + 1 To Endzeile - 6 Step 5
Summea = Summea + Cells(Startzeile, 4)
Next
.Cells(Endzeile - 5, 4) = SummePK
GoTo ZuStart    'Dadurch wird nicht mehr das gesamte Tabellenblatt_
abgesucht sondern zur nächsten Gruppe gesprungen _
deren erste Zeile durch "Bezeichnung" gekennzeichnet ist (also zum nächsten I)
End If
Next J
End If
ZuStart:
Next I
End With

Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige