Folgendes Problem: Ich habe in Spalte A die Artikelnummer „507986“ mehrfach, mit jeweils 2 Werten (Spalte B + C )
Ich möchte die Liste so ändern, dass ich nur eine Zeile mit der Artikelnummer „507986“ habe und in den folgenden Spalten die Werte aus Spalte B als Überschrift in Zeile A und die Werte aus Spalte C in die Zeile 2.
Das würde in diesem Besispiel sein, dass in Zeile 1 (Überschrift)die Werte"Artikel-Nr",„Modelname“,„Lieferumfang“,„Planungshinweise“,etc stehen und dass man in Zeile 2 mit der Artikel-Nr 507986
beginnt mit den dann folgenden Werten der Spalte C. Es sind ca 2000 Artikel in dieser Liste, die nicht immer gleich lang sind, sprich malhat eine Artikelnummer 10 Zeilen, mals 15 mal 17.
Hallo,
aus dieser vorhandenen datanbankaehnlichen Anordnung laesst sich viel machen, finde ich gelungen, wuerde ich eher nicht umstricken.
Willst Du dennoch, probier mal die Funktion von Excel „transponieren“.
Aber nur in einer Kopie der Tabelle, vermutlich gefaellt es nicht. Laesst sich dan gar nicht mehr vernuenftig drucken, nur mit viel scrollen noch lesen.
Das muesste dann mit jedem Artikel gemacht werden, 150 mal etwa von Hand.
Gruss Helmut
Danke für die Hilfe, aber soviel manuell wollte ich ja gerade nicht machen. Das Problem, ich habe eine Datenbank, die die Artikel nur zeilenweise einliest. Je Artikel nur 1 Zeile aber viele Spalten.
das ist keine Datenbank, sondern eine Müllkippe. Täglich werden Hunderttausende damit verdient, solchen Schrott zu normalisieren, dh in die Struktur Deiner Excel-Datei zu bringen.
Wenn’s denn mit der Brechstange sein muss:
für alle Zeilen
3 Spalten aus Q(uelldate) nach Z(ieldatei)
z.Spalte = 3
wenn q.nächsteZeile.Artikelnummer = q.aktuelleZeile.Artikelnummer
2 Spalten aus Q nach Z
z.spalte = z.spalte +2
sonst
nächste Zeile
Ja super. Da bin ich ja wunderbar im Kreis gelaufen und wieder am Anfang meiner Frage. Das ich mir was basten kann und wie die Analyse des Problems ist, wusste ich ehrlich gesagt schon vorher.
Hat denn jemand anders eine Lösung für das Problem ?
Versuchen könnte ich es Dazu aber eine Bitte: Du hast einen Screenshot Deiner Original-Tabelle hochgeladen. Wenn Du auch einen Screenshot hochladen würdest, auf dem einige manuell erstellte Zeilen Deiner „Lösungstabelle“ abgebildet sind, ginge es leichter!
An Niclaus!
oben siehst du die Tabelle, die ich benötige, unten die Quelldatei. Achtung: Die Rubriken sind nicht bei allen Artikeln gleich.
Danke im Voraus
Peter
Vielleicht habe ich mich etwas unklar, aber ich dachte, es ging aus den Sceenshots hervor! Klar ist, dass alle Werte aus Spalte B in dierneuen Tabelle als Spaltenüberschrift fungieren und die Werte aus Spalte C die Zeilenwerte jeden Artikels sind. Das Problem ist folgendes: in der neuen Tabelle gibt es geschätzt 40 Spaltenüberschriften, aber jeder Artikel bedient nicht jede Spalte mit einem Wert, sondern der eine Artikel hat 20 Werte, der nächste vielleicht 30. Alle Werte lassen sich zu den ca. 40 Spalten zuordnen.
Das hat also nichts mit Kaffeesatzleserei zu tun. Wäre es so, hätte ich meine Glaskugel gefragt.
Es geht einfach nur darum, Werte zu transformieren, ohne doppelte Spalten zu erhalten und richtige Spaltenzuordnungen zu erreichen.
Dass sich der Fragesteller auch bemühen sollte, errinnert mich stark an meine Schulzeit und inkompetente Lehrer.
Hallo Peter
Ich glaube, es ist mir klar, wie Deine Tabelle aussehen sollte. - Mit einer Formel wird es kaum möglich sein, eine Lösung zu finden. Trotzdem noch Fragen dazu:
a) Kennst Du Dich etwas aus mit Makros? - Wie bereits gesagt wurde, wäre eine Makro-Lösung wohl die einfachste Variante. - Wenn nicht:
b) Kennst Du Dich aus mit Pivot-Tabellen? Damit könnte man die ca. 40 Spalten generieren.
Je nach Deiner Antwort würde ich versuchen, etwas zu basteln.
Viele Grüsse Niclaus
Mal blöd gefragt: Was spricht dagegen eine SVerweis-Formel zu benutzen? Ich stelle mir das folgendermaßen vor: Du erzeugst dir eine weitere Spalte an Stelle C, dort erstellst du dir einen eindeutigen Index, sagen wir
C2=A2&" "&B2
Das ganze dann durch die Spalte kopieren, einen Datenbereich erstellen (Ich nenne ihn mal „Daten“) der die Spalten C und D abdeckt, dann die Kreuztabelle erstellen (Natürlich neues Blatt, alle Nummern in Spalte A, alle Felder in Zeile 1), dann kann man mit
B2=SVerweis($A2&" "&B$1;Daten;2;FALSCH)
den Wert für das Feld B2 füllen lassen, diese Formel einfach über die ganze Kreuztabelle kopieren, Fehler abfangen, fertig.
Diese Formel muss als Matrix-Formel eingegeben werden, also mit CTRL-RETURN statt nur mit RETURN. Sie kann dann in die andern Zellen kopiert werden.
Vorher müsste man - wohl am einfachsten mit Pivot-Tabellen - die Artikelnummern und die Spaltenbeschriftungen (Modellname, Beschreibung intern usw.) eruieren.