Zellen mit doppelten Werten erkennen und zusammenfassen
#1
Hallo,
ich komme hier leider nicht weiter und benötige Hilfe von Euch Excel-Experten. Mein Problem:
Ich habe eine Tabelle mit Produktbundles erstellt. Jedes Bundle besteht aus mindestens zwei Artikeln.

in Spalte 1 ist jeder Artikel einer Bundle-Nr. zugeordnet.
Nun will ich, dass alle Artikelnr. die zu dem gleichen Bundle gehören, in einer Spalte zusammengefasst werden, mit Semikolon getrennt.

Ist schwierig zu erklären, deshalb hänge ich hier mal eine Beispieldatei an, damit ihr versteht was ich meine.

Vielen Dank schonmal.

Liebe Grüße
Birgo
.xlsx   Beispieldatei-gleiche Zellen zusammenfassen.xlsx (Größe: 14,46 KB / Downloads: 24)
Antworten Top
#2
Was soll denn "Version 19" bedeuten?
Antworten Top
#3
Hallo Birgo,

hier mal mein Lösungsversuch mittels Excel - Power Query.

Gruß von Luschi
aus klein-Paris


Angehängte Dateien
.xlsx   Beispieldatei-gleiche Zellen zusammenfassen.xlsx (Größe: 18,73 KB / Downloads: 13)
[-] Folgende(r) 1 Nutzer sagt Danke an Luschi für diesen Beitrag:
  • Jockel
Antworten Top
#4
Hallo

hier mal eine VBA Makro Lösung. Button drücken, Fertig.

mfg Gast 123

Ich habe den Code noch mal verbessert, so werden auch die Leerzeilen direkt gelöscht.

Code:
Sub Artikel_zusammenfassen()
Dim i As Long, j As Long
Dim Txt As String, lz1 As Long
    lz1 = Cells(Rows.Count, 2).End(xlUp).Row
    Range("E7:E" & lz1).ClearContents
    Application.ScreenUpdating = False
    For j = 7 To lz1
      If Cells(j, 2) = Cells(j + 1, 2) Then
         For i = j To lz1
            Txt = Txt & "; " & Cells(i, 4)
            If Cells(i, 2) <> Cells(i + 1, 2) Then Exit For
         Next i
         Cells(j, 5) = Trim(Mid(Txt, 2))
         j = i: Txt = Empty
      End If
    Next j

    'Leerzeilen löschen
    For j = lz1 To 7 Step -1
       If Cells(j, 5) = Empty Then Rows(j).Delete shift:=xlUp
    Next j
End Sub


Angehängte Dateien
.xlsm   Beispieldatei-gleiche Zellen zusammenfassen.xlsm (Größe: 18,34 KB / Downloads: 1)
Antworten Top
#5
Moin

Eine Formellösung.
Arbeitsblatt mit dem Namen 'Tabelle1'
GH
71A111; B444
82C222; B444; E666
93D333; B444

ZelleFormel
G7=EINDEUTIG(B7:B13)
H7=TEXTVERKETTEN("; ";WAHR;WENN($B$7:$B$13=G7;$D$7:$D$13;""))
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.2) erstellt. ©Gerd alias Bamberg
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#6
Hallo Detlef,
vielen Dank für Deine Hilfe. Aber ich habe die Version 2019 und da gibt es keinen Eindeutig-Befehl.
habe hier anhand deiner Formel ein bisschen rumprobiert, aber ich krieg es nur hin, dass alle kompletten Artikel in einer Zeile landen.

Liebe Grüße
Birgo

Hallo Luschi,

vielen Dank für Deine Antwort. Aber in der Tabelle werden keine Formeln mitübertragen. Habe natürlich die Inhalte aktiviert, alle Sicherheitsdinge ausgeschaltet, aber es werden keine Formeln übertragen, sodass ich leider nicht nachvollziehen kann, was du gemacht hast.
Außerdem glauch ich auch dass ich mit Power Query hoffnungslos überfordert bin.
Jetzt eine generelle Frage: Kriegt man sowas nur mit PQ hin oder gibt es auch eine einfach Lösung für Menschen, die nicht soviel Ahnung von Excel haben?

Liebe Grüße
Birgo
Antworten Top
#7
Hallo Birgo,

mit einem kleinem Makro geht's auch. (s. Mappe)


Gruß Sigi


Angehängte Dateien
.xlsm   Bundle Zellen.xlsm (Größe: 18,5 KB / Downloads: 2)
Antworten Top
#8
Hi Birgo,

mit 365 sollte es auch mit Formeln gehen. Ansonsten tatsächlich halt mit Makro (VBA) oder Power Query. Wobei für den ungeübten Power Query i.d.R. leichter als VBA erlernbar ist. Vor allem deshalb, da sich bei Power Query sehr viel einfach erklicken lässt.

Ich habe nun auch eine PQ erstellt, die für PQ-Neulinge leichter nachvollziehbar sein sollte. Eine kurze Anweisung ist in der Mappe enthalten. Ansonsten gibt es sehr viele und gute Einführungsvideo auf YouTube.


Angehängte Dateien
.xlsx   cef - Zellen mit doppelten Werten erkennen und zusammenfassen (PQ).xlsx (Größe: 23,68 KB / Downloads: 3)
Antworten Top
#9
Für Excel 2016 aufwärts:

Mittels Power Query
nachfolgende Formel in den erweiterten Editor einfügen


let
    Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
    #"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Bundle-Nr.", Int64.Type}, {"Artikelname", type text}, {"Artikelnr. ", type text}, {"Zusammenfassung", type text}}),
    #"Entfernte Spalten" = Table.RemoveColumns(#"Geänderter Typ",{"Zusammenfassung"}),
    #"Gruppierte Zeilen" = Table.Group(#"Entfernte Spalten", {"Bundle-Nr."}, {{"Bundle", each Text.Combine([#"Artikelnr. "], " "), type text}})
in
    #"Gruppierte Zeilen"

Ergebnis:

Bundle-Nr.      Bundle 
1                    A111 B444 
2                    C222 B444 E666 
3                    D333 B444

Vielleicht ist damit ja geholfen.

Grüße TW
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste