Matrixtabelle mit zwei Spaltenbezeichnungen in Pivotfähige Tabelle umwandeln
#1
Hallo zusammen,
ich sitze bereits seit an dem Problem eine riesige Matrixtabelle (leider nur über unser BI als Matrix verfügbar) in eine pivotfähige Tabelle umzuarbeiten. Im Attachment ist die Ursprungsmatrix zu sehen mit:

Art Nr Sales Stock Forecast (Überschrift 1)
Monat 1 Monat 2 Monat 1 Monat 2 Monat 1 Monat 2 (Überschrift 2)
AA Wert1 Wert2 Wert3 Wert4 usw. (Werte)

Sie soll verändert werden in eine Pivotfähige Tabelle mit folgenden Spalten

Art. Zeitraum Stock Sales usw.
AA Nov 16 Wert3 Wert 1
AA Dez 16 Wert4 Wert 2 usw.

Die Tabelle hat 56 Spalten und fast 5000 Zeilen. Ich möchte möglichst wenig per Hand machen müssen, weil sie monatlich aktualisiert werden muss.

Habt ihr eine Idee für mich, wie ich dahin komme? Habe bereits mehrere Controller um Hilfe gebeten, Versuche gemacht, das ganze in Pivot umzudrehen bzw. Zeilen und Spalten zu vertauschen. Ohne Erfolg. Habt ihr vielleicht eine Idee, was ich machen könnte?
Viele Grüße. diebennie


Angehängte Dateien Thumbnail(s)
   
Top
#2
Hallo diebennie.

Pivottabellen greifen immer auf die einzelnen Ursprungsdaten zu. Du solltest mal anstatt eines Screenshots eine Excel-Tabelle mit diesen hochladen.
Was du mit BI und Matrix meinst, ist mir nicht klar. Aber wenn du damit andeutest, dass du nicht die Einzel-/Rohdaten hast, sondern nur aggregierte Daten wird es wohl eher nichts werden.
Top
#3
Diebennie,

Kreuztabelle in Liste umwandeln - Power Query - Lösung 1 zu # 468
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top
#4
Hallo,

teste diesen Code als Vorstufe einer Pivot-Tabelle:


Code:
option base 1
Sub Main
dim Ar

if sheets.count =1 then
    Nm = activesheet.name
    sheets.add
    activesheet.name = "neu"
    sheets("Nm").activate
endif
lr = cells(rows.count, "A").end(xlup).row
ls = cells(1,columns.count).end(xltoleft).column
redim Ar(lr * ls, 4)
Tb = activesheet.usedrange.cells
z = 1
for i = 3 to ubound(Tb)
    for j = 2 to ls
        Z = Z + 1
        Ar(z,1) = Tb(i,1)
        Ar(z,2) = Tb(1, j)
        Ar(z,3) = Tb(2,j)
        Ar(z,4) = Tb(i,j)
    next j
next i
'Ausgabe
sheets("neu").Range("A1").resize(ubound(Ar),4) = Ar
end Sub
Top
#5
Hallo zusammen,

vielen Dank für eure Antworten. 

@ Schachspieler: ich bekomme Daten aus SAP und einem selbstgestricktem BI Tool, was im Grunde auch nur SAP Daten als Matrix auswertet als Management Tool. Meine finale Tabelle ist nun auch eine Matrix. Excel Sheet des Datenauszugs ist jetzt anbei.

@ shift-del: Power Query hat bei zwei Überschriften nicht funktioniert. 

@ Fennek: das Makro werde ich morgen mal testen, auf die schnelle mit youttube video hat es nicht funkioniert (habe sowas noch nie gemacht). Ich würde gerne die Formeln mitnehmen, da die Ausgangstabelle monatlich aktualisiert werden soll, geht das mit dem Makro?



Viele Grüße
diebennie


Angehängte Dateien
.xlsx   Mappe1.xlsx (Größe: 490,33 KB / Downloads: 9)
Top
#6
Hallo,

die Tabellen der Zeilen 3-11 und 14+ passen nicht zusammen!

Ein Forcast ist ab Zeile 14 nicht unmittelbar erkennbar.

mfg
Top
#7

.xlsx   Mappe1.xlsx (Größe: 16,95 KB / Downloads: 3) Hallo Fennek,

vielen Dank für deine Antwort

das war vielleicht etwas irreführend. Die Tabelle ab Zeile 14 sollte erklären, welche Ansicht ich mir wünsche. Ich habe das Attachment noch einmal besser dargestellt (siehe Anhang) - es ist nach wie vor ein Auszug aus dem was ich gerade bearbeite. Kannst du damit was anfangen?

// diebennie
Top
#8
Diebennie,

wenn du ständig die Spaltenüberschriften änderst macht das das Verständnis nicht einfacher.
Vorher stand die Monatsangabe auch in der ersten Überschriftenzeile. Was stimmt denn nun?

Stock = Lagerbestand
Sales = Sales
FC = RW = Reichweite
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste