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

Forumthread: Zeilen zusammenfassen und Werte Addieren mit VBA

Zeilen zusammenfassen und Werte Addieren mit VBA
17.08.2005 19:03:24
Harald
Hallo Ich habe folgendes Problem :
Ich habe eine Tabelle aus mehrerern Spalten besteht.
Beispiel:
Kennnummer Name Bereich WERT 1 WERT 2
1 X A 10 2
1 X A 5 1
1 X A 5 5
2 H B 8 44
2 H B 5 556
3 G C 6 9
3 G C 4 8
3 G C 5 2
3 G C 6 8
4 M D 4 3
4 M D 3 88
4 M D 4 55
4 M D 8 55
In der ersten Spalte A kommen immer wieder die gleichen Nummern vor.
Ich möchte die Zeilen zu einer zusammenfassen und den Wert in den Spalten C
addieren und die Werte in der Spalte D addieren
Tabelle soll nachher so aussehn:
Kennnummer Name Bereich WERT 1 WERT 2
1 X A 20 8
2 H B 13 600
3 G C 21 27
4 M D 19 201
Wenn einer eine Lösung wüsste wäre toll.
Gruß Harald

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen zusammenfassen und Werte Addieren mit V
17.08.2005 20:29:03
ChrisBee
Hallo Harald.
Wenn Du einen CommandButton daneben baust dann gehts mit diesem Code:

Private Sub CommandButton1_Click()
Dim iRow As Integer
iRow = 1
Do Until IsEmpty(Cells(iRow, 1))
Do Until Cells(iRow, 1).Value <> Cells(iRow + 1, 1).Value
If Cells(iRow, 1).Value = Cells(iRow + 1, 1).Value Then
Cells(iRow, 4) = Cells(iRow, 4) + Cells(iRow + 1, 4)
Cells(iRow, 5) = Cells(iRow, 5) + Cells(iRow + 1, 5)
Rows(iRow + 1).Delete
End If
Loop
iRow = iRow + 1
Loop
End Sub

Mit ein bisschen basteln kann mans aber auch in ein Makro setzen.
Sonnige Grüße
ChrisBee
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zeilen zusammenfassen und Werte addieren mit VBA


Schritt-für-Schritt-Anleitung

  1. Öffne dein Excel-Dokument mit der Tabelle, die die zu aggregierenden Werte enthält.

  2. Füge einen CommandButton hinzu:

    • Gehe zu den Entwicklertools und wähle "Einfügen".
    • Wähle den CommandButton aus und platziere ihn in deiner Tabelle.
  3. Öffne den VBA-Editor:

    • Klicke mit der rechten Maustaste auf den CommandButton und wähle "Code anzeigen".
  4. Füge den folgenden Code ein:

    Private Sub CommandButton1_Click()
       Dim iRow As Integer
       iRow = 1
       Do Until IsEmpty(Cells(iRow, 1))
           Do Until Cells(iRow, 1).Value <> Cells(iRow + 1, 1).Value
               If Cells(iRow, 1).Value = Cells(iRow + 1, 1).Value Then
                   Cells(iRow, 4) = Cells(iRow, 4) + Cells(iRow + 1, 4)
                   Cells(iRow, 5) = Cells(iRow, 5) + Cells(iRow + 1, 5)
                   Rows(iRow + 1).Delete
               End If
           Loop
           iRow = iRow + 1
       Loop
    End Sub
  5. Schließe den VBA-Editor und kehre zurück zur Excel-Oberfläche.

  6. Klicke auf den CommandButton, um die Zeilen zusammenzufassen und die Werte in den Spalten zu addieren.


Häufige Fehler und Lösungen

  • Fehler: „Typen unverträglich“
    Lösung: Stelle sicher, dass die Werte in den Spalten, die addiert werden sollen, tatsächlich Zahlen sind. Überprüfe auf unerwünschte Leerzeichen oder Textformate.

  • Fehler: „Index außerhalb des gültigen Bereichs“
    Lösung: Dieser Fehler tritt auf, wenn die Schleife über den letzten Datenbereich hinausgeht. Überprüfe die Endbedingung in der Schleife.


Alternative Methoden

Falls du keine VBA-Lösungen verwenden möchtest, kannst du auch die PivotTable-Funktion in Excel nutzen:

  1. Wähle deine Daten aus.
  2. Gehe zu „Einfügen“ und klicke auf „PivotTable“.
  3. Ziehe die Kennnummer, den Namen und den Bereich in die Zeilen und die Werte in den Wertebereich, um die Werte zusammenzufassen.

Praktische Beispiele

Angenommen, du hast die folgende Tabelle:

Kennnummer Name Bereich WERT 1 WERT 2
1 X A 10 2
1 X A 5 1

Nach der Ausführung des VBA-Codes sieht die Tabelle so aus:

Kennnummer Name Bereich WERT 1 WERT 2
1 X A 15 3

Tipps für Profis

  • Optimiere den VBA-Code: Du kannst den Code effizienter gestalten, indem du zusätzliche Bedingungen hinzufügst, um leere Zeilen zu ignorieren.
  • Verwende die „RemoveDuplicates“-Funktion in Kombination mit „SumIf“, um eine nicht-vba-basierte Lösung zu erzielen.

FAQ: Häufige Fragen

1. Wie kann ich den Code anpassen, wenn ich mehr als zwei Werte addieren möchte?
Du kannst einfach weitere Cells(iRow, x) = Cells(iRow, x) + Cells(iRow + 1, x)-Zeilen für die gewünschten Spalten hinzufügen.

2. Ist dieser VBA-Code auch in älteren Excel-Versionen kompatibel?
Ja, der Code sollte in Excel-Versionen ab 2007 funktionieren. Achte darauf, dass die Entwicklertools aktiviert sind.

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