16.12.2021, 11:17
Hallo zusammen,
ich hoffe ihr könnt mir bei einem VBA Problem helfen.
Die Datei habe ich beiliegend angehängt und ich bin auch schon recht weit gekommen, es fehlt aus meiner Sicht noch ein (kleiner aber sehr wichtiger) Schritt.
Register: Originaldaten (so bekomme ich die Auswertung)
Register: Aufbereitet (hier sollen die Daten laut Makro "Aufbereiten" entsprechend aufbereitet werden
Ich habe versucht das Makro so gut wie möglich zu kommentieren.
Spalte A = Kundennummer
Spalte B = Artikelnummer
Spalte C = CrossSelling Artikel
Ich brauche nun aber alle Daten in nur 2 Spalten statt 3 Spalten.
Spalte E = Kundennummer
Spalte G = Artikelnummer (der CrossSelling Artikel)
Ich habe auf Stackoverflow ein Makro gefunden ("Sub multilineCellsToSeparateCells(rng As Range)"), das schon fast genau das macht was ich will, nämlich die Werte aus der Spalte C von Werten die untereinander in einer einzelnen Zelle stehen in einzelne Zellen zu schreiben (Spalte G). Ich denke man sieht das auch ganz gut am beiliegenden Screenshot.
Mein Problem ist aber, dass ich das aktuell nur für eine Spalte, also C zu G machen kann.
In Spalte E müsste immer der passende account (Kundennummer) stehen. Man sieht hier, dass die Werte hier irgendwann enden, die Spalte A also genau gleich lang wie die Spalte E ist.
Für die ersten Wertepaare müsste also in E2 - E7 die erste Kundennummer aus A2 stehen (das passt nicht, bzw. irgendwann nicht mehr) und in Spalte G2 - G7 die Werte aus Zelle C2 aber eben in einzelnen Zeilen (das passt).
In Spalte D zähle ich die Anzahl der Einträge pro Zelle in Spalte C, ich könnte also eine Schleife bauen wo ich den jeweiligen Wert aus A so oft in Spalte E untereinander kopiere.
Wäre aber ein "dirty Workaround" und ich hätte das gerne sauber / eleganter gelöst.
Am Ende ergänze ich dann die Spalte E unter der Spalte A und die Spalte G unter der Spalte B und lösche anschließend noch die Spalten C-G löschen, sortierte die Daten nach accountnummer, entferne Duplikate etc.
Ich hoffe sehr jemand von euch kann mir da helfen.
Vielen Dank schon im Voraus und lg
Olli
ich hoffe ihr könnt mir bei einem VBA Problem helfen.
Die Datei habe ich beiliegend angehängt und ich bin auch schon recht weit gekommen, es fehlt aus meiner Sicht noch ein (kleiner aber sehr wichtiger) Schritt.
Register: Originaldaten (so bekomme ich die Auswertung)
Register: Aufbereitet (hier sollen die Daten laut Makro "Aufbereiten" entsprechend aufbereitet werden
Ich habe versucht das Makro so gut wie möglich zu kommentieren.
Spalte A = Kundennummer
Spalte B = Artikelnummer
Spalte C = CrossSelling Artikel
Ich brauche nun aber alle Daten in nur 2 Spalten statt 3 Spalten.
Spalte E = Kundennummer
Spalte G = Artikelnummer (der CrossSelling Artikel)
Ich habe auf Stackoverflow ein Makro gefunden ("Sub multilineCellsToSeparateCells(rng As Range)"), das schon fast genau das macht was ich will, nämlich die Werte aus der Spalte C von Werten die untereinander in einer einzelnen Zelle stehen in einzelne Zellen zu schreiben (Spalte G). Ich denke man sieht das auch ganz gut am beiliegenden Screenshot.
Mein Problem ist aber, dass ich das aktuell nur für eine Spalte, also C zu G machen kann.
In Spalte E müsste immer der passende account (Kundennummer) stehen. Man sieht hier, dass die Werte hier irgendwann enden, die Spalte A also genau gleich lang wie die Spalte E ist.
Für die ersten Wertepaare müsste also in E2 - E7 die erste Kundennummer aus A2 stehen (das passt nicht, bzw. irgendwann nicht mehr) und in Spalte G2 - G7 die Werte aus Zelle C2 aber eben in einzelnen Zeilen (das passt).
In Spalte D zähle ich die Anzahl der Einträge pro Zelle in Spalte C, ich könnte also eine Schleife bauen wo ich den jeweiligen Wert aus A so oft in Spalte E untereinander kopiere.
Wäre aber ein "dirty Workaround" und ich hätte das gerne sauber / eleganter gelöst.
Am Ende ergänze ich dann die Spalte E unter der Spalte A und die Spalte G unter der Spalte B und lösche anschließend noch die Spalten C-G löschen, sortierte die Daten nach accountnummer, entferne Duplikate etc.
Ich hoffe sehr jemand von euch kann mir da helfen.
Vielen Dank schon im Voraus und lg
Olli
WIN 10 64-Bit Pro / EXCEL Microsoft Office 365 ProPlus 64-Bit