Untereinander stehende Zellen in einer Zelle Zusammenfügen

Diskutiere und helfe bei Untereinander stehende Zellen in einer Zelle Zusammenfügen im Bereich Microsoft Office im Windows Info bei einer Lösung; Hallo Zusammen, ich habe folgendes Anliegen und hoffe, dass mir jemand aus der community weiterhelfen kann. Ich habe eine Exceltabelle mit... Dieses Thema im Forum "Microsoft Office" wurde erstellt von Slawomir_K, 13. März 2019.

  1. Slawomir_K
    Slawomir_K Gast

    Untereinander stehende Zellen in einer Zelle Zusammenfügen


    Hallo Zusammen,


    ich habe folgendes Anliegen und hoffe, dass mir jemand aus der community weiterhelfen kann. Ich habe eine Exceltabelle mit Kundenpreisen welche in eine ERP-Software importiert werden müssen. Die ERP-Software benötigt die Daten allerdings gesondert aufbereitet:


    IST-Zustand

    Die Ausgangsdatei beinhaltet folgenen Aufbau in Excel (bzw. CSV)

    Ziele 1; Adresse;Artikel;VK-Preis;Ab Menge;Ab Datum;

    Zeile 2;Hans Otto;0815;82,50;01.01.2019;1;

    Zeile 3;Hans Otto;0815;80,00;01.01.2019;10;

    Zeile 4;Hans Otto;4711;60,00;01.02.2019;10;Zeile 4;

    Zeile 5;Max Mustermann;0815;82,50;01.01.2019;1;

    Zeile 6;Max Mustermann;0815;80,00;01.01.2019;10;

    Zeile 7;Max Mustermann;4711;60,000;01.02.2019;10;Zeile 4;

    ....


    SOLL-Zustand:

    Ziele 1; Adresse;Artikel;VK-Preis;Ab Menge;Ab Datum;

    Zeile 2;Hans Otto;0815(*)0815(*);4711;82,50(*)80,00(*)60,00;01.01.2019(*)01.01.2019(*)01.02.2019;1(*)10(*)4;

    Zeile 3;Max Mustermann;0815(*)0815(*);4711;82,50(*)80,00(*)60,00;01.01.2019(*)01.01.2019(*)01.02.2019;1(*)10(*)4;


    Pro Kunde dürfen die Kundenpreisdaten nur in einer Zeile stehen und mit (*) getrennt werden.


    Hat jemand eine gute Idee mit welcher Formel oder VB-Markro der SOLL-Zustand umgestetzt werden kann?
     
  2. Claus Busch Win User

    Untereinander stehende Zellen in einer Zelle Zusammenfügen

    Hallo Slawomir,

    wenn deine Daten in Tabelle1 sind, bringt dir das folgende Makro die Daten im gewünschten Format nach Tabelle2. Sonst im Code die Blattnamen anpassen:

    Sub Umformen()
    
    Dim varData As Variant, varArt() As Variant, varPreis() As Variant
    
    Dim varDat() As Variant, varAb() As Variant, varTmp As Variant
    
    Dim LRow As Long, n As Long, i As Long
    
    Dim c As Range, dest As Range
    
    Dim FirstAddress As String
    
    Dim myDic As Object
    Set myDic = CreateObject("Scripting.Dictionary")
    
    With Sheets("Tabelle1")
    
       LRow = .Cells(.Rows.Count, "A").End(xlUp).Row
    
       varData = .Range("A2:E" & LRow)
    
       For n = LBound(varData) To UBound(varData)
    
          myDic(varData(n, 1)) = varData(n, 1)
    
       Next
    
       varTmp = myDic.items
    
       Sheets("Tabelle2").Cells(Rows.Count, "A").End(xlUp)(2) _
    
          .Resize(UBound(varTmp) + 1) = Application.Transpose(varTmp)
    
          
    
       For n = LBound(varTmp) To UBound(varTmp)
    
          i = 0
    
          Set c = .Range("A:A").Find(varTmp(n), LookIn:=xlValues)
    
          If Not c Is Nothing Then
    
             FirstAddress = c.Address
    
             Do
    
                ReDim Preserve varArt(i): varArt(i) = c.Offset(, 1)
    
                ReDim Preserve varPreis(i): varPreis(i) = c.Offset(, 2)
    
                ReDim Preserve varDat(i): varDat(i) = c.Offset(, 3)
    
                ReDim Preserve varAb(i): varAb(i) = c.Offset(, 4)
    
                i = i + 1
    
                Set c = .Range("A:A").FindNext(c)
    
             Loop While Not c Is Nothing And c.Address <> FirstAddress
    
          End If
    
          Set dest = Sheets("Tabelle2").Cells(.Rows.Count, "B").End(xlUp)(2)
    
          dest = Join(varArt, "(*)")
    
          dest.Offset(, 1) = Join(varPreis, "(*)")
    
          dest.Offset(, 2) = Join(varDat, "(*)")
    
          dest.Offset(, 3) = Join(varAb, "(*)")
    
       Next
    
    End With
    
    Sheets("Tabelle2").Columns("A:E").AutoFit
    
    End Sub
    Claus
  3. Claus Busch Win User

    Untereinander stehende Zellen in einer Zelle Zusammenfügen, mit Kondition

    Hallo Wolfgang,

    ich würde die Makroversion vorziehen, aber ich wollte unbedingt herausfinden, ob es auch mit Formel geht.

    Probiere mal in A1:

    =WENN(UND(A1="";A2<>"");TEXTVERKETTEN(ZEICHEN(10);1;BEREICH.VERSCHIEBEN(A2;;;MIN(WENN(A2:A1000="";ZEILE($2:$1000)))-2));"")

    und schließe die Eingabe mit STRG+Shift+Enter ab, da Array-Formel.

    Ziehe dann herunter und formatiere die Spalte über Zellen formatieren => Ausrichtung => Zeilenumbruch.

    Claus
  4. Claus Busch Win User

    Untereinander stehende Zellen in einer Zelle Zusammenfügen, mit Kondition

    Hallo Wolfgang,

    probiere es mal so:

    Sub Zusammenfassen()
    
    Dim LRow As Long, i As Long, n As Long
    
    Dim varData() As Variant, varTmp As Variant
    
    Dim myStr As String
    
    Dim rngC As RangeWith ActiveSheet
    
        LRow = .Cells(.Rows.Count, 1).End(xlUp).Row
    
        ReDim Preserve varData(LRow - 2)
    
        For i = 2 To LRow
    
            varData(i - 2) = .Cells(i, 1)
    
        Next
    
        myStr = Join(varData, Chr(10))
    
        Do
    
            myStr = Replace(myStr, Application.Rept(Chr(10), 3), _
    
                Application.Rept(Chr(10), 2))
    
        Loop While InStr(myStr, Application.Rept(Chr(10), 3)) > 0
    
        varTmp = Split(myStr, Application.Rept(Chr(10), 2))
    
        For Each rngC In .Range("A1:A" & LRow)
    
            If Len(rngC) = 0 And Len(rngC.Offset(1, 0)) > 0 Then
    
                rngC.Offset(, 1) = varTmp(n)
    
                n = n + 1
    
            End If
    
        Next
    
    End With
    
    End Sub
    
    Claus
  5. Claus Busch Win User

    Untereinander stehende Zellen in einer Zelle Zusammenfügen, mit Kondition

    Hallo Wolfgang,

    mache diesen Vorgang besser mit VBA. Drücke Alt+F11 => Einfügen Modul und fügen dort diesen Code ein:

    Sub Zusammenfassen()
    
    Dim LRow As Long, i As Long, n As Long
    
    Dim varData() As Variant, varTmp As Variant
    
    Dim myStr As String
    
    Dim rngC As Range
    
    With ActiveSheet
    
        LRow = .Cells(.Rows.Count, 1).End(xlUp).Row
    
        ReDim Preserve varData(LRow - 2)
    
        For i = 2 To LRow
    
            varData(i - 2) = .Cells(i, 1)
    
        Next
    
        myStr = Join(varData, Chr(10))
    
        varTmp = Split(myStr, Chr(10) & Chr(10))
    
        For Each rngC In .Range("A1:A" & LRow)
    
            If Len(rngC) = 0 Then
    
                rngC.Offset(, 1) = varTmp(n)
    
                n = n + 1
    
            End If
    
        Next
    
    End With
    
    End Sub
    Gehe zurück auf dein Tabellenblatt und rufe das Makro auf.

    Claus
  6. Wolf and the Gang Win User

    Untereinander stehende Zellen in einer Zelle Zusammenfügen, mit Kondition

    Hallo Claus,

    dein Makro funktioniert ausgezeichnet, vielen herzlichen Dank dafür! Danke vor allem auch für die rasche Antwort!

    Ich selbst hatte leider mein Ausgangsproblem nicht hundertprozentig so beschrieben, wie es sich mir darstellt. In meiner Tabelle kommt es vor, dass auch mehrere Leerzeilen zwischen zwei Blöcken stehen, die in der Spalte B zusammengefasst werden sollen.

    Dein Makro ist nun davon abhängig, dass sich immer genau eine Trennzeile zwischen zwei von den Blöcken befindet, damit es auch in meinem Fall anwendbar ist. Wenn man es ausführt, kommt folgendes heraus:




    [​IMG]


    Das gewünschte Ergebnis wäre folgendes:




    [​IMG]


    Könntest du mir vielleicht nochmals aushelfen, bitte? Ich selbst verstehe leider nichts von VBA und Makros Programmieren.

    Viele Grüße,

    Wolfgang
  7. User Advert


    Hi,

    willkommen im Windows Forum!
Thema:

Untereinander stehende Zellen in einer Zelle Zusammenfügen - Microsoft Office

Die Seite wird geladen...

Untereinander stehende Zellen in einer Zelle Zusammenfügen - Similar Threads - Untereinander stehende Zellen

Forum Datum

Wie kann man alle 'Bild in die Zelle' in 'Bild über die Zelle' auf einmal wechseln?

Wie kann man alle 'Bild in die Zelle' in 'Bild über die Zelle' auf einmal wechseln?: Guten Tag, ich möchte alle Bilder, die ich als 'Bild in die Zelle' wieder in 'Bild über die Zelle' platzieren und zwar alles Bilder auf einmal, wie kann ich das machen? Einzeln geht das ja. Und...
Microsoft Office 29. Januar 2024

Zelle mit Bezug auf die gleich Zelle berechnen

Zelle mit Bezug auf die gleich Zelle berechnen: Guten Morgen,meine Formel soll folgendes darstellen.Zelle A1 hat den Wert 1000.Zelle A2 soll den Wert haben der sich ergibt wenn man A2 mit einem Prozentsatz 15% multipliziert und diesen dann von...
Microsoft Office 10. Januar 2023

Formatierung schrott, kein Zusammenfügen von Zellen

Formatierung schrott, kein Zusammenfügen von Zellen: Hallo Leute,ich "digitalisiere" mit Excel 365 eine Adressammlung. Damit diese nachher im Ausdruck lesbarer ist, hatte ich unter Start > Als Tabelle formatieren mir das passende Layout ausgesucht....
Microsoft Office 1. Dezember 2021

Wenn Zelle farbig, dann Information aus anderer Zelle übertragen, sonst nichts

Wenn Zelle farbig, dann Information aus anderer Zelle übertragen, sonst nichts: Hallo zusammen Ich stehe vor folgenden Herausforderung: In der Darstellung ab Spalte F möchte ich erreichen, dass die gewählte Uhrzeit in Spalte E automatisch in die eingefärbten Zellen...
Microsoft Office 28. Februar 2020

Wie kann eine verbundene Zelle als eine Zelle ausgefüllt werden

Wie kann eine verbundene Zelle als eine Zelle ausgefüllt werden: Hallo zusammen, ich will eine Spalte vom 1 Jan. bis zum 31. Dez. automatisch ausfüllen lassen, einige Zellen sind allerdings verbundene Zellen ("Doppelzellen"). Wenn ich nun die Spalte ausfüllen...
Microsoft Office 16. November 2019

Zusammenfügen oder verketten von zellen

Zusammenfügen oder verketten von zellen: Hallo, ich möchte den Inhalt vieler Zellen in einer Zelle zusammenfügen. Die Inhalte sollen dann mit Leerzeichen oder Komma verkettet werden. Habe es sonst so gelöst: =A2&","&A3 Es sind aber...
Microsoft Office 25. Mai 2018

Excel: mehrere Texte in Spalte zu einer Zelle zusammenfügen

Excel: mehrere Texte in Spalte zu einer Zelle zusammenfügen: Hallo, folgendes Problem: Es sollen die mehrere "Texte" aus einer Spalte einer Zelle zusammengefasst werden. Da es sich um endlos lange Tabellen handelt, muss das mittels einer Formel...
Microsoft Office 24. Februar 2017
Untereinander stehende Zellen in einer Zelle Zusammenfügen solved
  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.