Excel Tabelle umformen

A

apodis

Gast
Hallo,

ich habe eine Tabelle "Produktimport.xlsx" die ich gerne automatisch umformen möchte. Anschließend soll die Tabelle so aussehen wie "Produktimport nach Umformung.xlsx".

Ist das mit einer Formel oder in Excel so machbar?

Gruß
 

Anhänge

  • Produktimport.xlsx
    9,2 KB · Aufrufe: 98
  • Produktimport nach Umformung.xlsx
    9 KB · Aufrufe: 97
Zuletzt bearbeitet von einem Moderator:
Hallo.

Da einer Produktnummer unterschiedlich viele Zeilen Beschreibungen zugeordnet sind sag ich mal ohne VBA nicht lösbar.

------------

Habe Dir mal kurz etwas Code getippt. Ist auch in der xls. im Anhang.
In der Tabelle muessen die gegebenen ausgangsdaten in Spalte A,B,C stehen die Umforung erhälst Du dann in E,F,G.
Makros müssen zugelassen sein.

Zum VBA Editor in Excel kommst Du mittels ALT+F11

Code:
Public Sub mergeData()
Dim line_source As Integer
Dim line_target As Integer
Dim line_max As Integer
Dim newline As Boolean

newline = False
line_max = 15000
line_target = 1

For line_source = 2 To line_max
    If IsEmpty(Sheets("Tabelle1").Cells(line_source, 1)) = False Then
        newline = True
    End If
    
    If newline = True Then
        line_target = line_target + 1
        Sheets("Tabelle1").Cells(line_target, 5) = Sheets("Tabelle1").Cells(line_source, 1)
        Sheets("Tabelle1").Cells(line_target, 6) = Sheets("Tabelle1").Cells(line_source, 2)
        newline = False
    End If
    If newline = False And IsEmpty(Sheets("Tabelle1").Cells(line_source, 3)) = False Then
        Sheets("Tabelle1").Cells(line_target, 7) = Sheets("Tabelle1").Cells(line_target, 7) & " " & Sheets("Tabelle1").Cells(line_source, 3)
    End If

Next

End Sub


viel spaß, bei Fragen fragen o/
E.o.B
 

Anhänge

  • Produktimport Umformer.xls
    38,5 KB · Aufrufe: 105
Zuletzt bearbeitet:
Schau mal ob dir das weiterhilft.
Ich habe es nicht ohne die Hilfsspalte geschafft. Entweder du blendest die aus, oder du übernimmst die für Spalte A und nutzt bedingte Formatierung, um die doppelten Werte auszublenden (entweder mit Schriftfarbe weiß oder mit Zahlenformat ";;;").

Das Makro dahinter ist etwas kürzer als das von E.o.B, aber es sollte seinen Dienst tun:
Code:
Option Explicit

Function BEREICHVERKETTEN(strArray As Variant, trenner As String)
    Dim i As Integer
    
    For i = 1 To UBound(strArray, 1)
        If strArray(i, 1) <> "" And strArray(i, 1) <> 0 Then
            BEREICHVERKETTEN = BEREICHVERKETTEN + strArray(i, 1)
            If i < UBound(strArray, 1) Then BEREICHVERKETTEN = BEREICHVERKETTEN + trenner
        End If
    Next
End Function
 

Anhänge

  • Produktimport.zip
    15,3 KB · Aufrufe: 92
Hallo zusammen,

vielen Dank für die schnelle und hilfreiche Antwort. Ich habe das Makro von E.o.B ausprobiert und es tut genau das, was ich benötigte. In der Original Excel Tabelle (die ich auch umformen muss) habe ich noch eine Spalte zusätzlich. Ich habe dann noch das Makro erweitert. Hat alles gut geklappt.

Gruß!
 
Zurück
Oben