Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Werte aus Zeilen kommasepariert in Zelle

Werte aus Zeilen kommasepariert in Zelle
24.11.2015 15:41:45
Christian
Wir haben mehrere Zeilen untereinander in denen unter anderem eine Artikel-Nummer steht.
Diese ist zwar eigentlich eindeutig, aber da ein Artikel in mehreren Kategorien erfasst sein kann, wurde für jede Kategorie eine eigene Zeile erfasst.
Nun möchte ich pro Produkt nur noch eine Zeile haben und alle vorhandenen Kategorien kommasepariert in einer einzigen Spalte.
Hat jemand eine Idee mit VBA oder Funktion. Sollte eigentlich nicht allzu schwierig sein, aber _
ich beisse mir die Zähne aus an etwas wie (Pseudocode):
while article_number eq vorherige article_number
category = category . "," . category
next article_number

https://www.herber.de/bbs/user/101771.xlsx

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte aus Zeilen kommasepariert in Zelle
24.11.2015 15:53:03
Michael
Hi C.Z.,
in M2:
=WENN(B3B2;ZEILE();"")

in N2:
=WENN(B2B1;H2;N1&","&H2)

und runterkopieren, solange links Daten sind.
Dann die Spalten M und N markieren, kopieren, Inhalte einfügen/Werte und alles nach Spalte M sortieren.
Dann kannst Du alle Zeilen, in denen in Spalte M nix steht, in einem Rutsch rauslöschen.
Schöne Grüße,
Michael

Anzeige
AW: Werte aus Zeilen kommasepariert in Zelle
24.11.2015 16:33:00
Christian
Lieber Michael
H A M M E R !
Ich schäme mich fast, dass ich soweit gesucht habe und es so einfach machbar ist.
In wenigen Minuten über 3000 Produkten die richtigen Kategorien zugeordnet.
Freude herrscht! Herzlichen Dank!

Freude herrscht auch hier, Edler!
24.11.2015 16:53:57
Michael
;
Anzeige
Anzeige

Infobox / Tutorial

Werte aus Zeilen kommasepariert in Zelle zusammenfassen


Schritt-für-Schritt-Anleitung

Um Werte aus mehreren Zeilen in einer Zelle kommasepariert zusammenzufassen, kannst Du die folgende Vorgehensweise nutzen:

  1. Vorbereitung der Daten: Stelle sicher, dass Deine Daten in Spalten organisiert sind. Zum Beispiel könnte die Artikel-Nummer in Spalte A und die Kategorie in Spalte B stehen.

  2. Formeln einfügen:

    • In Zelle M2 füge die folgende Formel ein, um die Zeilennummer zu bestimmen:
      =WENN(B3=B2;ZEILE();"")
    • In Zelle N2 benutze die folgende Formel, um die Kategorien zusammenzufassen:
      =WENN(B2=B1;H2;N1&","&H2)
  3. Formeln nach unten ziehen: Markiere die Zellen M2 und N2 und ziehe die Formeln nach unten, bis alle Daten erfasst sind.

  4. Inhalte einfügen: Markiere die Spalten M und N, kopiere sie und füge die Werte ein (Rechtsklick -> Inhalte einfügen -> Werte).

  5. Sortieren und Löschen: Sortiere die Daten nach Spalte M und lösche alle Zeilen, wo in M kein Wert steht.

Jetzt solltest Du eine kommaseparierte Liste von Kategorien für jeden Artikel haben!


Häufige Fehler und Lösungen

  • Fehler: Formel gibt einen Fehler aus.

    • Lösung: Überprüfe, ob die Zellbezüge korrekt sind und die Daten in den richtigen Spalten stehen.
  • Fehler: Die Kategorien werden nicht korrekt zusammengeführt.

    • Lösung: Stelle sicher, dass in der Formel die Bedingungen (B2=B1) korrekt sind. Achte darauf, dass die Artikel-Nummern identisch sind.

Alternative Methoden

Eine weitere Möglichkeit, Werte kommasepariert in einer Zelle zusammenzufassen, ist die Verwendung von VBA. Hier ein einfaches Beispiel für einen VBA-Code:

Sub Zusammenfassen()
    Dim lastRow As Long
    Dim i As Long
    Dim articleNumber As String
    Dim categories As String

    lastRow = Cells(Rows.Count, 1).End(xlUp).Row

    For i = 2 To lastRow
        If Cells(i, 1).Value = articleNumber Then
            categories = categories & "," & Cells(i, 2).Value
        Else
            If categories <> "" Then
                Cells(i - 1, 3).Value = Mid(categories, 2)
            End If
            articleNumber = Cells(i, 1).Value
            categories = Cells(i, 2).Value
        End If
    Next i
    Cells(i - 1, 3).Value = Mid(categories, 2)
End Sub

Dieser Code durchläuft die Zeilen und fasst die Kategorien in einer neuen Spalte zusammen.


Praktische Beispiele

Angenommen, Du hast die folgenden Daten:

Artikel-Nummer Kategorie
12345 Elektronik
12345 Haushaltswaren
67890 Möbel
67890 Dekoration

Nach Anwendung der beschriebenen Schritte oder des VBA-Codes solltest Du folgendes Ergebnis haben:

Artikel-Nummer Kategorien
12345 Elektronik,Haushaltswaren
67890 Möbel,Dekoration

Tipps für Profis

  • Nutze die FILTER-Funktion (in neueren Excel-Versionen) zur dynamischen Erstellung von kommaseparierten Listen.
  • Experimentiere mit Power Query für eine leistungsstarke Datenmanipulation und -zusammenführung.
  • Automatisiere den Vorgang mit Makros, um Zeit zu sparen, besonders bei großen Datenmengen.

FAQ: Häufige Fragen

1. Frage
Wie kann ich die Formeln anpassen, wenn ich andere Spalten benutze?
Antwort: Du musst die Zellbezüge in den Formeln anpassen, sodass sie auf die richtigen Spalten zeigen.

2. Frage
Kann ich die kommaseparierte Liste in einer anderen Sprache erhalten?
Antwort: Ja, Du kannst die Formeln entsprechend der Spracheinstellungen Deines Excel anpassen, indem Du die Funktionsnamen übersetzt.

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