Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Werte aus 2 Zellen in mehrer Zellen transformieren

Werte aus 2 Zellen in mehrer Zellen transformieren
12.04.2017 09:37:00
Julian
Guten Tag zusammen,
ich habe folgende Tabelle1:
A1: Orangenkorb1 B1: Orange_1, Orange_2
A2: Orangenkorb2 B2: Orange_1, Orange_3, Orange_4
A3: Orangenkorb3 B3: Orange_2, Orange_3
Ich möchte Tabelle1 mit folgendem Ergebnis in Tabelle2 transformieren:
A1: Orangenkorb1 B1: 1
A2: Orangenkorb1 B2: 2
A3: Orangenkorb2 B3: 1
A4: Orangenkorb2 B4: 3
A5: Orangenkorb2 B5: 4
A6: Orangenkorb3 B6: 2
A7: Orangenkorb3 B7: 3
Kann mir dazu jemand mittels VBA weiterhelfen? Vorab schon mal vielen Dank für eure Hilfe.
VG
Julian
Ps. Um die Werte aus Spalte B zu transformieren wurde mir bereits aus diesem Forum mit folgendem VBA-Code geholfen, der auch super funktioniert:
Function IntText(ByVal Bereich As Range)
Dim regex As Object, newText, out
Set regex = CreateObject("vbscript.regexp")
newText = Join(Application.Transpose(Bereich.Value))
With regex
.Pattern = "(.*?)(\_)(\d+)"
.Global = True
out = Split(.Replace(newText, "/$3"), "/")
IntText = out
End With
End Function

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte aus 2 Zellen in mehrer Zellen transformieren
12.04.2017 11:21:49
Julian
Hallo Michael,
wow - funktioniert wie von mir erhofft! Danke und noch einen schönen Tag :-)
VG
Julian
Gern, Danke für die nette Rückmeldung, owT
12.04.2017 11:55:46
Michael
Anzeige
AW: Gern, Danke für die nette Rückmeldung, owT
12.04.2017 12:29:09
Julian
Für folgende User die das Script auch benutzen möchten, habe ich zwei Erweiterungen/Anmerkungen.
1. Ich lasse vor jeder Ausführung mit .ClearContents die bereits erstellten Daten "leeren", sodass es nicht zu Redundanzen kommt.
2. Um bspw. Spalte E anstelle von Spalte B auszulesen, muss im Script die entsprechende Spaltennummer 2x geändert werden (in diesem Fall 5).
Änderungen zum Script von Michael habe ich fett markiert.
Sub Obstkorb()
Dim Wb As Workbook: Set Wb = ThisWorkbook
Dim WsQ As Worksheet: Set WsQ = Wb.Worksheets("Tabelle1")
Dim WsZ As Worksheet: Set WsZ = Wb.Worksheets("Tabelle2")
Dim DatenAlt, RegEx As Object, AlleOrangen, Orange
Dim i&, j&
WsZ.Range("A:B").ClearContents
DatenAlt = WsQ.Range(WsQ.Cells(2, 1), WsQ.Cells(WsQ.Rows.Count, 5).End(xlUp))
Set RegEx = CreateObject("vbscript.regexp")
With RegEx
.Pattern = "[0-9]+"
.Global = True
End With
For i = LBound(DatenAlt) To UBound(DatenAlt)
Set AlleOrangen = RegEx.Execute(DatenAlt(i, 5))
With WsZ
For j = 0 To AlleOrangen.Count - 1
.Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0) = DatenAlt(i, 1)
Next j
For Each Orange In AlleOrangen
.Cells(.Rows.Count, 2).End(xlUp).Offset(1, 0) = Orange.Value
Next Orange
End With
Next i
WsZ.Activate
Set Wb = Nothing
Set WsQ = Nothing
Set WsZ = Nothing
Erase DatenAlt
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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