Zellen neben Pivot-Tabelle fixieren?

Hallo Experten,

ich habe folgendes Problem:

Eine Pivot-Tabelle erstreckt sich in einem Sheet über knapp 10.000 Zeilen und etwa 25 Spalten, beginnend in Spalte G.
In den Spalten A-F habe ich [manuell] Parameter eingetragen, die jede Zeile in der Pivottabelle definieren und bestimmen, wie ein S-Verweis mit der Zeile umgeht wenn er sie aus der Pivot-Tabelle in ein zweites Sheet holt. Das funktioniert auch alles.

Mein Problem ist nun: Wenn sich die Pivot-Tabelle ändert, zb mittendrin neue Zeilen eingefügt werden, verschieben sich andere bereits bestehende Zeilen der Pivot-Tabelle nach unten, aber meine Parameter, die links von der Pivot-Tabelle eingetragen sind, verschieben sich nicht, da sie nicht Teil dieser Pivot-Tabelle sind.

Jetzt suche ich nach einer Lösung, die mir meine einmal eingegebenen Parameter fest an die dazugehörige Zeile in der Pivot-Tabelle kettet, so dass sich die Pivot-Tabelle auch mal ändern kann, ohne dass alle Parameter daraufhin manuell korrigiert werden müssen.

Any ideas?

Jerry

Hallo Jerry,

ohne Inhalte und Struktur der Daten zu kennen ist Hilfe schwierig.

Eine Möglichkeit -diese setzt voraus, das die Daten der Pivot-Tabelle immer nach den gleichen Kriterien sortiert werden- wäre:

Vor dem Aktualiseren der Pivot-Tabelle sicherst du die Daten in eine separate Tabelle.
Nach dem Aktulisieren der Pivot-Tabelle führst du per Makro für die relevanten Spalten einen zeilenweisen Vergleich zwischen den alten und neuen Daten der Pivot-Tabelle ein. Immer dann, wenn die Daten unterschiedlich sind, fügst du in den Spalten A bis F Leerzellen ein und verschiebst die vorhandenen Parameter-Einträge um eine Zeile nach unten.

In einem zweiten Durchlauf muß du dann für die neuen Zeilen die Parameter eintragen.

Falls du bei dem Makro Unterstützung brauchst, dann kann ich auch da behilflich sein.

Gruß
Franz

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

In den Spalten A-F habe ich [manuell] Parameter eingetragen,
die jede Zeile in der Pivottabelle definieren und bestimmen,
wie ein S-Verweis mit der Zeile umgeht wenn er sie aus der
Pivot-Tabelle in ein zweites Sheet holt. Das funktioniert auch
alles.
Mein Problem ist nun: Wenn sich die Pivot-Tabelle ändert, zb
mittendrin neue Zeilen eingefügt werden, verschieben sich
andere bereits bestehende Zeilen der Pivot-Tabelle nach unten,
aber meine Parameter, die links von der Pivot-Tabelle
eingetragen sind, verschieben sich nicht, da sie nicht Teil
dieser Pivot-Tabelle sind.

Hi Jerry,
Pivot-Tabellen kenne ich nicht und weiß wenig mit deinen Infos anzufangen.
Kannst du denn den Zellen in z.B. Spalte f namen geben und diese
werden von der Pivot-Tabelle benutzt?
Dann könntest du mit der Sub tt1 diese Namensvergabe erledigen lassen.
Wenn sich dann was geändert hat durch Zeilen einfügungen dann halt tt2 laufen lassen.
Und wenn das alles klappt könnte man anstatt tt2 ein Workshrret_change
Ereignis auswerten.
Code ist noch ncht lauffähig, ist mehr ein Denkansatz und ich weiß
noch nicht ob ich richtig liege mit dem Vertändnis deiner Anfrage.
Gruß
Reinhard

Option Base 1
Sub tt1()
While Cells(zei + 1, 6) "" ' 6=6te Spalte= F
 zei = zei + 1
 ActiveWorkbook.Names.Add Name:="Zelle" & zei, RefersToR1C1:="=Tabelle1!R" & zei & "C6"
Wend
End Sub
Sub tt2()
For Each n In ThisWorkbook.Names
 x = x + 1
 ReDim Preserve z(x)
 z(x) = n
 n.Delete
Next n
For n = UBound(z) To 1 Step -1
 ActiveWorkbook.Names.Add Name:="Zelle" & .... ' Hier noch halt den Namen "Zelle..." sowie RefersTo bilden aus dem String von n
Next n
End Sub

Hallo Franz,
hallo Reinhard,

Vor dem Aktualiseren der Pivot-Tabelle sicherst du die Daten
in eine separate Tabelle.
Nach dem Aktulisieren der Pivot-Tabelle führst du per Makro
für die relevanten Spalten einen zeilenweisen Vergleich
zwischen den alten und neuen Daten der Pivot-Tabelle ein.
Immer dann, wenn die Daten unterschiedlich sind, fügst du in
den Spalten A bis F Leerzellen ein und verschiebst die
vorhandenen Parameter-Einträge um eine Zeile nach unten.

Exakt so etwas brauche ich!

In einem zweiten Durchlauf muß du dann für die neuen Zeilen
die Parameter eintragen.

So ist es geplant.

Falls du bei dem Makro Unterstützung brauchst, dann kann ich
auch da behilflich sein.

Ich bitte darum, ich habe von VBA absolut keine Ahnung.

Vielleicht ist der Code, den Reinhard geschrieben hat ja bereits das was ich benötige?

Noch ein paar Infos zur Pivot-Tabelle zur besseren Vorstellung:
Spalte G enthält den Firmennamen (insgesamt 3 Firmen) und am Ende eine Gesamtsumme für jede einzelne Kostenstelle
Spalte H enthält das Produkt (gibt aber nur eines)
Spalte I enthält Namen der Kostenstelle
Spalte J enthält erste Unterteilung der Kostenstelle in 4 Unterdefinitionen
Spalte K unterteilt diese Unterdefinitionen jeweils nochmal durch zwei
weitere, die in einer dritten Zeile summiert werden
ab Spalte L beginnen dann die Zahlenwerte, bei mir mit Juli 04 und das zieht sich dann hin bis zum aktuellen Monat
nach den Kostenstellen werden diese aufsummiert (also die Summe der 4 Unterdefinitionen gebildet) und ganz zum Schluss noch alle gleichen Kostenstellen der Firmen zusammen aufsummiert.

Herzlichen Dank für eure Mühe,

Jerry