Office: Summieren von gleichen Zeilen

Helfe beim Thema Summieren von gleichen Zeilen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, in einer Excel Datei mit mehr als 10.000 Zeilen will ich die jeweils identischen Zeilen summieren. Siehe die stark gekürzte Datei als Model... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Ariane Eberwein, 16. Juni 2008.

  1. Summieren von gleichen Zeilen


    Hallo,
    in einer Excel Datei mit mehr als 10.000 Zeilen will ich die jeweils identischen Zeilen summieren. Siehe die stark gekürzte Datei als Model anbei. Wie lautet die entsprechenden Formel? Herzlichen Dank von einem Excel Laien für die Hilfe im voraus! :-)
     
    Ariane Eberwein, 16. Juni 2008
    #1
  2. gook Erfahrener User
    Hallo,

    kannst du die Dateien mal nur als xls Hochladen?
    Da es auch noch Helfer gibt die kein Excel 2007, erhört das deine Chancen auf eine Lösung enorm.

    Gruß
     
  3. neue Excel-Datei

    Hallo,

    gerne hier ist sie. Vielleicht noch eine Präzisierung zu meiner Frage. Ich möchte die jeweils identischen Zeilen in eine zusammenfassen und eine Summe des Betrags erhalten.

    Tausend Dank für Eure Unterstützung.
     
    Ariane Eberwein, 16. Juni 2008
    #3
  4. Summieren von gleichen Zeilen

    neue Excel-Datei

    Hallo,

    gerne hier ist sie. Vielleicht noch eine Präzisierung zu meiner Frage. Ich möchte die jeweils identischen Zeilen in eine zusammenfassen und eine Summe des Betrags erhalten.

    Tausend Dank für Eure Unterstützung.
     
    Ariane Eberwein, 16. Juni 2008
    #4
  5. gook Erfahrener User
    Hallo,

    liegen die gleichen Zeilen aneinander an. Oder kann es auch sein das z.B Zeile 1 gleich Zeile 100 ist?

    Gruß
     
  6. Summieren von Zeilen

    Hallo,

    über einen "sort" habe ich alle Zeilen, die identisch sind untereinander.
     
    Ariane Eberwein, 16. Juni 2008
    #6
  7. gook Erfahrener User
    Hallo,

    also du kannst den Code hier verwenden

    Code:
    Sub schse()
    Dim zell1 As String
    Dim zell2 As String
    Dim zähler As Integer
    Do Until zähler > 50
    zähler = zähler + 1
    For i = 1 To 10000
    For ii = i + 1 To 10
    zell1 = Cells(i, 1) & Cells(i, 2) & Cells(i, 3) & Cells(i, 4) & _
    Cells(i, 5) & Cells(i, 6) & Cells(i, 7) & Cells(i, 8) & Cells(i, 9)
    zell2 = Cells(ii, 1) & Cells(ii, 2) & Cells(ii, 3) & Cells(ii, 4) & _
    Cells(ii, 5) & Cells(ii, 6) & Cells(ii, 7) & Cells(ii, 8) & Cells(ii, 9)
    If zell1 = zell2 Then
    Cells(i, 10).Value = Cells(i, 10).Value + Cells(ii, 10).Value
    Rows(ii).Delete
    End If
    Next ii
    Next i
    Loop
    End Sub
    In ein Modul und mal Starten.
    kann sein das du ihn 2 mal ausführen musst. Ist es möglich das Zellen mehr als 10mal gleich sind?

    Gruß
     
  8. miriki Erfahrener User

    Summieren von gleichen Zeilen

    Re: Summieren von Zeilen

    Ok, dann meine Lösung:

    Code:
    Option Explicit
    
    Const listrow = 1 'zeile listenanfang quelle --> überschrift
    Const listcol = 1 'listenspalte mit lückenlosen werten bis ende
    Const testcol1 = 1 '1. spalte der werte zum vergleichen
    Const testcol2 = 9 'letzte spalte der werte zum vergleichen
    Const sumcol = 10 'spalte der zu addierenden werte
    
    Const targetsheet = "Sheet2" 'zielblatt für zusammenfassung
    Const targetrow = 1 'zeile listenanfang ziel (zusammenfassung)
    
    Private Sub B_Zusammenfassung_Click()
    
        Dim w1, w2
        Dim y1 As Long: Dim x1 As Long: Dim tst1 As String
        Dim y2 As Long
        Dim key1 As String: Dim key2 As String
    
        Set w1 = ActiveSheet
        Set w2 = Worksheets(targetsheet)
    
        w2.Cells.ClearContents
        w2.Cells.ClearFormats
        w2.Cells.Font.ColorIndex = xlColorIndexAutomatic
        w2.Cells.Interior.ColorIndex = xlColorIndexNone
        w2.Cells.Borders.LineStyle = xlLineStyleNone
        w2.Columns.ColumnWidth = 1
    
        y2 = targetrow
    
        y1 = listrow
        w1.Rows(y1).Copy Destination:=w2.Rows(y2) 'überschrift kopieren
    
        y1 = y1 + 1 'nächste zeile --> listenanfang
        x1 = listcol
        w1.Activate: w1.Cells(y1, x1).Activate 'cursor positionieren
        tst1 = Trim$(w1.Cells(y1, x1).Value) 'prüfwert für listenende
        While (tst1 <> "") 'bis listenende abarbeiten
            y2 = y2 + 1: w1.Rows(y1).Copy Destination:=w2.Rows(y2) 'zeile in zusammenfassung kopieren
            key1 = "": For x1 = testcol1 To testcol2 'eine art "hash" der aktuellen zeile aufbauen
                key1 = key1 & Trim$(w1.Cells(y1, x1).Value)
            Next x1
    
            key2 = "": For x1 = testcol1 To testcol2 '"hash" der nächsten zeile aufbauen
                key2 = key2 & Trim$(w1.Cells(y1 + 1, x1).Value)
            Next x1
            While (key2 = key1) 'bei gleichheit: zusammenaddieren/addieren
                w1.Cells(y1 + 1, sumcol).Copy: w2.Cells(y2, sumcol).PasteSpecial operation:=xlPasteSpecialOperationAdd
                y1 = y1 + 1
                key2 = "": For x1 = testcol1 To testcol2: key2 = key2 & Trim$(w1.Cells(y1 + 1, x1).Value): Next x1
            Wend
    
            y1 = y1 + 1: x1 = listcol 'nächste zeile, spalte bleibt gleich
            w1.Activate: w1.Cells(y1, x1).Activate
            tst1 = Trim$(w1.Cells(y1, x1).Value)
        Wend
        
        w2.Columns.AutoFit
    
        Application.CutCopyMode = False
    
    End Sub
    Dies addiert gleiche Zeilen zusammen und stellt das Ergebnis auf einem Extra-Blatt dar. In diesem Fall muß das Blatt bereits existieren (sheet2, siehe targetsheet) und wird am Anfang der Zusammenfassung gelöscht (also der Inhalt nur, meine ich). Das erledigt der kleine Block ab "w2.cells.clearcontents". Alternativ könnte natürlich auch ein komplett neues Blatt erstellt werden (sheets.add, name, ...).

    Die Routine geht die Liste in sehr konservativer Manier durch. Es wird ein Startpunkt links oben gesetzt (y1,x1) und ab da zeilenweise die Liste solange abgearbeitet, bis in y1,x1 ein leerer Wert gefunden wird. Wichtig dabei ist, daß listcol auf eine Spalte verweist, in der die Werte lückenlos bis ans Ende der Liste vorhanden sind.

    Für jede Zeile wird dann geprüft, ob die Werte in der Folgezeile gleich sind. Dazu wird aus den Spalten test1col1 bis testcol2 eine Art "hash" gebildet und miteinander verglichen. Sind die Zeilen gleich, wird aufaddiert, ansonsten wird die komplette Zeile in eine neue Zeile der Zusammenfassung kopiert und das Spielchen geht von vorne los.

    Ich hab mal im Anhang die Zeilen-Blöcke, die zusammengefaßt werden sollen, abwechselnd blau/grün eingefärbt, damit man in der Zusammenfassung etwas leichter erkennen kann, ob das Ergebnis stimmt.

    Ich hab versucht, die ganze Routine weitestgehend durch Parameter anpaßbar zu machen. Ich hoffe, eine Adaption auf andere Umgebungen wird möglich, indem nur die ersten "const" Zeilen angepaßt werden müssen. Die eigentliche Routine kann dann als "Blackbox" betrachtet werden.

    Gruß, Michael
     
    miriki, 18. Juni 2008
    #8
  9. schatzi Super-Moderator
    Hallo!

    Hat euch alle die Programmier-Wut gepackt? :-D
    Eine Pivot-Tabelle erledigt das nach ein paar Mausklicks.
    Hier der Weg in Excel2007:
    Daten markieren
    Ribbon Einfügen > Pivot-Table > OK
    Alle angezeigten Felder in der Pivot-Table-Feldliste von oben nach unten anhaken. (Excel packt automatisch das Feld "Prix" in den Datenbereich, alle anderen in den Zeilenbereich.)
    Ribbon Pivot-Table-Tools > Entwurf > Teilergebnisse > Teilergebnisse nicht anzeigen

    Et voilà... c'est fini!
     
    Zuletzt von einem Moderator bearbeitet: 9. Dezember 2020
    schatzi, 18. Juni 2008
    #9
  10. miriki Erfahrener User
    immer! ;-)

    erwähnte ich schon, daß ich Pivot-Tabellen so ziemlich überhaupt nicht ausstehen kann? ;-)

    Gruß, Michael
     
    Zuletzt von einem Moderator bearbeitet: 9. Dezember 2020
    miriki, 18. Juni 2008
    #10
  11. Hallo,

    da sind wirklich Experten unterwegs! Ich bin beeindruckt und danke Euch sehr herzlich. Das Pivot ist besonders für Laien sehr hilfreich und ich hatte genau das Vorgehen auch schon versucht. Erhalte nur ein Ergebnis, das noch nicht passt. (siehe Anhang). Was mache ich falsch? Und eine Frage an Euch Tüftler. Wenn Ihr Euch das Ergebnis des Pivots von Schatzi anseht, sind jede Menge Felder leer. Sie beziehen sich auf die obigen "Titelzellen". Wie kann ich sie automatisch wieder füllen?

    Danke schon im voraus!
    Ariane
     
    Ariane Eberwein, 19. Juni 2008
    #11
  12. schatzi Super-Moderator
    Hallo!

    Bist du sicher, dass du die richtige Tabelle angehängt hast?
    Irgendwie ist daraus so rein gar nichts ersichtlich (zumindest für mich...)
     
    schatzi, 19. Juni 2008
    #12
  13. Summieren von gleichen Zeilen

    Hallo,

    es war ein kleiner Auszug aus meinem Pivotergebnis. Hier als neues Attachment ein etwas größerer Ausschnitt. Ich habe alle Felder wie Du hinter einander angeklickt. Der Unterschied bei mir ist, daß sie alle in dieselbe Spalte A eingestellt werden und nicht wie bei Dir nebeneinander in die Spalten A, B, C usw. Habe ich mich jetzt etwas verständlicher ausgedrückt?

    Bis später
    Ariane
     
    Ariane Eberwein, 19. Juni 2008
    #13
  14. schatzi Super-Moderator
    Hallo!

    Da es sich bei deiner Datei um keine echte Pivottabelle handelt, sondern lediglich um eine Kopie, und auch keinerlei Quelldaten zu finden sind, können wir alle nur raten...
    Anhand deiner ersten Datei:
    Spalte J (Prix) gehört in den Datenbereich ("Werte"/"Values").
    Alle anderen Spalten (A-I) gehören in den Zeilenbereich ("Zeilenbeschriftungen"/"Row Labels")
     
    schatzi, 19. Juni 2008
    #14
  15. schatzi Super-Moderator
    Hallo!

    Noch eine Idee:
    Pivot-Table-Tools > Design > Report Layout > Show in Tabular Form
     
    schatzi, 19. Juni 2008
    #15
Thema:

Summieren von gleichen Zeilen

Die Seite wird geladen...
  1. Summieren von gleichen Zeilen - Similar Threads - Summieren gleichen Zeilen

  2. Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien

    in Microsoft Excel Hilfe
    Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien: Schönen guten Abend, Wie kann man am besten Summieren mit mehreren Kriterien eines soll davon das Datum sein. So das vom Aktuellen Letzten Datums Wert aus gehent die letzten Bsp. 10 Werte...
  3. Spalte Summieren wenn Monat UND Jahr

    in Microsoft Excel Hilfe
    Spalte Summieren wenn Monat UND Jahr: Hallo Forum, ich scheitere an einem wie ich dachte recht einfachen Problem, aber vielleicht kann mir hier jemand helfen. Ich habe eine Spalte mit einem Datum, und eine Zweite mit einer Summe. Der...
  4. Summieren farbiger Zahlen anhand des Farbcodes ohne VBA

    in Microsoft Excel Hilfe
    Summieren farbiger Zahlen anhand des Farbcodes ohne VBA: Hallo liebes Forum, welche Formel muss ich eingeben, wenn ich farbige Ziffern (z.B. rot = Farbcode 3; grün = 4) addieren möchte. Danke im voraus für die schnelle Antwort Gruß mfkathie
  5. Werte der gleichen Kalenderwoche summieren

    in Microsoft Excel Hilfe
    Werte der gleichen Kalenderwoche summieren: Hallo Zusammen, vielleicht kann mir jemand bei meinem Problem helfen. Ich habe eine Tabelle, in der in Spalte B die Kalenderwoche steht und in Spalte C das Tagesdatum. Ich hätte nun gerne, dass...
  6. Werte vom gleichen Datum summieren

    in Microsoft Excel Hilfe
    Werte vom gleichen Datum summieren: Hi, irgendwie stehe ich auf dem Schlauch. Ich möchte alle Werte die zu einem Datum gehören aufsummieren. Doch die aufsummierte Summe soll erst bei dem letzten gleichen Datum stehen (hierzu könnte...
  7. Summieren von Stunden wenn sie am gleichen Tag vom gleichen Mitarbeiter getätigt wurd

    in Microsoft Excel Hilfe
    Summieren von Stunden wenn sie am gleichen Tag vom gleichen Mitarbeiter getätigt wurd: Allein der Titel hat mir schon Schwierigkeiten bereitet! Am besten ich gebe ein Beispiel: In A2 bis A50 stehen verschiedene Daten, in B2 bis B50 die verschieden Mitarbeiter, in C2 bis C50 die...
  8. Werte gleicher Namen summieren und neu ausgeben

    in Microsoft Excel Hilfe
    Werte gleicher Namen summieren und neu ausgeben: Hallo, ich tu mir beim Betreff schon schwer das ordentlich zu beschreiben und weiß auch nicht, nach welchen Stichwörtern ich suchen kann und muss, damit ich dazu etwas finde, ob es sowas schon...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden