Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
816to820
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
816to820
816to820
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Steuerung mehrerer PivotTabellen über gleiche Feld

Steuerung mehrerer PivotTabellen über gleiche Feld
02.11.2006 15:08:18
Ronny
Titel: Steuerung mehrerer PivotTabellen über gleiches Zeilenfeld
Hallo Leute ich habe folgendes großes Problem:
----------------------------------------------
Ich habe aus Spaltenmangel in Excel 5 Tabellenblätter mit Mess-Daten angelegt, welche täglich vom 01.01.06 bis 31.12.2006 über einen speziellen Server aktualisiert werden. Unter den angelegten Mess-Daten habe ich jeweils aus diesen 1 PivotTabellen aufgebaut, welcher nur den Zeilenbereich nutzt und in der ersten Spalte immer das Datum steht, so dass sich alle anderen Spalten dann danach einstellen, d.h. wenn man Tag x auswählt, erhält man alle Werte y.
Nun möchte ich gern ein Extrafeld in einem anderen Tabellenblatt haben, welches in den 5 PivotTabellen mir immer das Datum auswählt, was ich in dem Extrafeld eingebe oder noch besser ich im Extrafeld auswählen kann. (noch einfach ausgedrückt, ich möchte, dass das Häkchen bei "alle" rausgenommen wird in jeder der 5 Pivottabellen dann anschließend bei den Datum ein Häkchen reingesetzt wird, welches im Extrafeld eingegeben oder ausgewählt wurde.)
Ist dass möglich? Kann mir da bitte ein Excel-VBA-Profi von euch weiterhelfen, ein solches Feld zu erschaffen???
Bin für jede Hilfe SUPER DANKBAR!!!
Mfg,
Ein verzweifelter Excel-User

26
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
02.11.2006 23:33:54
Luschi
Hallo Ronny,
habe Dir mal ein kleines Beispiel gemacht, wie man per Vba-Code mit einer ComboBox die
Pivottabelle steuern kann.
Die ungebundene Combobox wird beim Öffnen der Arbeitsmappe mit den vorhandenen Datumswerten der Pivottabelle gefüllt.
Genauso könnte man jetzt weitere Pivottabellen auf das Datum der Combobox setzen.
https://www.herber.de/bbs/user/37870.xls
Gruß von Luschi
aus klein-Paris
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
03.11.2006 10:49:01
Ronny
Hi Luschi,
vielen Dank für deine Hilfe, scheint genau die Lösung zu sein die ich suche, leider klappt sie noch nicht so. Hab deine Combobox kopiert und den PivotTable Name meinen angepasst, sowie das Feld Datum auf meins abgeändert (Datum [Tag]), leider steht nichts in der Combobox, so dass ich mich Frage wo der Fehler liegt???
Ich habe mal meine Bsp-Datei unter

Die Datei https://www.herber.de/bbs/user/pivot.xls wurde aus Datenschutzgründen gelöscht

gespeichert, du kannst sie dir ja mal anschaun. Bei Ideen steht dass drin was ich eigentlich machen will, vielleicht kannst mir ja eine Bsp. Box machen, die ich mir dann wieder kopieren kann oder was sagen was ich speziell ändern muss? Wenn dass Beispiel sich gleich auf mehrere Pivotberichte bezieht sehe ich auch gleich wie das geht und kann die andern dann parallel so erstellen wie das Bsp von dir. Was mir noch aufgefallen ist, dass ich alle spalten in den Zeilenbereich geschoben habe und bei deinem Bsp. das Datum nicht im Zeilenbereich war, macht dass was aus?
Bin dir weiterhin sehr dankbar dass du dich meinem Problem annimst ^^
Mfg,
Ronny
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
03.11.2006 14:25:43
Luschi
Hallo Ronny,
den 1. Teil Deines Problems habe ich nicht verstanden.
Vom 2. Teil habe ich das Problem mit der Combobox eingebaut.
Nach der Auswahl eines Eintrages werden alle 4 Pivot-Tabelle auf diesen Eintrag gesetzt
und aktualisiert.
Dazu habe ich alle 4 Pivot-Tabellen den selben Namen ("PivotTable1") gegeben, damit
die Wiederholungsschleife läuft.
Bei den Pivot-Einträgen gibt den Eintrag "(Alle)" in Vba nicht. Deshalb haben bei diesem Auswahl-Kriterium nur die Einträge ein Häckchen, für die es auch darstellbare Werte gibt.
Gruß von Luschi
aus klein-Paris
https://www.herber.de/bbs/user/37886.zip
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
03.11.2006 15:59:07
Ronny
Hallo Luschi,
also das funktioniert super in der Beispieltabelle die du mir geschickt hast und genau so hatte ich mir dass auch vorgestellt. Nun hab ich die Box und die Schaltfläche zum füllen rüberkopiert, dann hab ich myArray(3) = "TWmw 379-504" nur die 504 auf 502 geändert und noch myArray(4) = "TWmw 503-590" dazugefügt, da ich noch ein paar Messdaten mehr dazubekommen habe. Dass ist jetzt aber die Finale Version, mehr Messdaten werden es nicht! Demzufolge habe ich noch myArray(3) As String, _ auf myArray(4) As String, _ geändert und ThisWorkbook.Worksheets("TWmw 503-590").PivotTables("PivotTable2").Name = "PivotTable1" noch hinzugefügt zu den andern Worksheets.
Die Combobox lässt sich auch fix füllen mit allen gewünschten Datumswerten usw., doch sobald ich ein Datum dann in dieser auswähle rescheint bei mir eine Sanduhr und die will nicht mehr weggehen. Nach 10min hab ich dann abgebrochen! Liegt dass daran das 5 PivotTabellen gefüllt mit je 255 Spalten über 368 Zeilen zuviel für Excel sind? Oder hab ich falsch gemacht oder vergessen zu tun? Deine Beispieldatei funktioniert jedenfalls genau so wie ich es gern bei meiner 46MB größeren Datei sehen würde! Hoffe du hast schon ne Idee woran es liegt ;) Vielen Dank für deine Mühe im vorraus von mir ^^
Mfg,
Ronny
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
03.11.2006 17:35:20
Luschi
Hallo Ronny,
binde mal folgenden Vba-Code in die Finalversion ein es.
Sub DeleteOldPivotItemsWB()
'Pivots aktualisieren
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
pt.PivotCache.MissingItemsLimit = xlMissingItemsNone
pt.PivotCache.Refresh
Next pt
Next ws
End Sub
Damit werden alte Pivot-Item-Einträge (deren Datengrundlage bereits nicht
mehr existieren) gelöscht und der gesammte Pivot-Cach neu gspeichert.
Bei Deiner riesigen Datei kann das natürlich 'ne kleine Ewigkit dauern.
Wegen Beschränkungen bei Pivot-Tabellen siehe: http://www.xlam.ch/xlimits/pivot.htm
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
06.11.2006 09:22:35
Ronny
Hi Luschi,
tja irgendwie hab ich immernoch die Sanduhr da und nach einer halben Stunde hab ich dann abgebrochen. Die Datei ist etwa 36MB groß und an sich müßte es doch auch funktionieren. Wenn ich die Pivottabellen nacheinander von Hand auf ein Datum einstelle, benötige ich für die 5 Pivotabellen ca. 30 Sekunden. Dass zeigt mir doch irgendwo, dass der Vorgang an sich für Excel nicht zu viel sein kann. Muss man vielleicht beim setzen der Pivottabellen auf ein Datum, den Vorgang immer mit einer Pause versehen, so dass Excel die Operationen nicht unmittelbar hintereinader ausführen muss?
Hast denn noch eine Idee warum Excel mir nur die Sanduhr zurückliefert? Müßte man noch was am Quellcode ändern?
Übrigens deine VBA-Lösung zum Löschen des Pivot-Cache finde ich toll, werde ich Standardmäßig in Zukunft verwenden ^^ Kann man diese Option noch verbessern? Also ich meine, dass immer wenn bei mir jeden Tag ein Wert dazukommt (durch Abruf des Datenservers und Eintrag in Excel), dieser Wert dann in der Pivottabelle nicht geordnet eingetragen wird, sondern ans Ende gestellt wird. Dass sehe ich daran, dass wenn ich irgend ein Messwertfenster wie in meiner Bsp.-Datei z.B. "K1 KAT RG-EINTR T" bei klicken auf das Dreickeck in der Pivottabelle sich ja dann dass Auswahlfenster öffnet und alle Werte von der kleinsten bis größten Zahl sich nacheinander aufreihen zum auswählen, immer alle neu dazugekommenen Werte, die nicht bei Entstehung des Pivotberichts vorhanden waren, ganz unten in der Liste stehen anstatt sich in die Reihenfolge einzugliedern. Kann man dass mit einem VBA-Befehl auch ankurbeln, so dass die Werte also immer geordnet werden in der Pivottabelle?
Wie immer bin ich dir für deine Mühe mit mir dankbar und hoffe dass wir bald das Problem gelöst haben!
Grüße,
Ronny
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
06.11.2006 09:23:12
Ronny
Hi Luschi,
tja irgendwie hab ich immernoch die Sanduhr da und nach einer halben Stunde hab ich dann abgebrochen. Die Datei ist etwa 36MB groß und an sich müßte es doch auch funktionieren. Wenn ich die Pivottabellen nacheinander von Hand auf ein Datum einstelle, benötige ich für die 5 Pivotabellen ca. 30 Sekunden. Dass zeigt mir doch irgendwo, dass der Vorgang an sich für Excel nicht zu viel sein kann. Muss man vielleicht beim setzen der Pivottabellen auf ein Datum, den Vorgang immer mit einer Pause versehen, so dass Excel die Operationen nicht unmittelbar hintereinader ausführen muss?
Hast denn noch eine Idee warum Excel mir nur die Sanduhr zurückliefert? Müßte man noch was am Quellcode ändern?
Übrigens deine VBA-Lösung zum Löschen des Pivot-Cache finde ich toll, werde ich Standardmäßig in Zukunft verwenden ^^ Kann man diese Option noch verbessern? Also ich meine, dass immer wenn bei mir jeden Tag ein Wert dazukommt (durch Abruf des Datenservers und Eintrag in Excel), dieser Wert dann in der Pivottabelle nicht geordnet eingetragen wird, sondern ans Ende gestellt wird. Dass sehe ich daran, dass wenn ich irgend ein Messwertfenster wie in meiner Bsp.-Datei z.B. "K1 KAT RG-EINTR T" bei klicken auf das Dreickeck in der Pivottabelle sich ja dann dass Auswahlfenster öffnet und alle Werte von der kleinsten bis größten Zahl sich nacheinander aufreihen zum auswählen, immer alle neu dazugekommenen Werte, die nicht bei Entstehung des Pivotberichts vorhanden waren, ganz unten in der Liste stehen anstatt sich in die Reihenfolge einzugliedern. Kann man dass mit einem VBA-Befehl auch ankurbeln, so dass die Werte also immer geordnet werden in der Pivottabelle?
Wie immer bin ich dir für deine Mühe mit mir dankbar und hoffe dass wir bald das Problem gelöst haben!
Grüße,
Ronny
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
06.11.2006 12:39:05
Ronny
Hi Luschi,
ich glaub das lag daran, dass ich bei der Zeile:
Private Sub ComboBox1_Change()
Dim wb As Workbook, pField As PivotField, pItem As PivotItem, _
myArray(4) As String, _
das myArray(4) As String, _ in myArray() As String, _ geändert hatte zu testzwecken. Wenn ich jetzt Excel abbrechen lassen, also während die Sanduhr läuft auf ESC drücke, bleibt er in VBA immer bei:
pItem.Visible = False
On Error GoTo 0
hängen, als ob er dort mit irgendwas nicht klar kommt. Was kann ich denn nur noch tun, damit genau dass funktioniert was in deiner Excel-Bsp.-Datei auch funktioniert hat???
Ich hoffe ich nerv dich nicht zu sehr ^^
Mfg,
ronny
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
06.11.2006 13:20:41
Luschi
Hallo Ronny,
deaktiviere doch mal den folgenden Befehl:
'Pivottabelle aktualisieren
'wb.Worksheets(myArray(i1)).PivotTables("PivotTable1").PivotCache.Refresh
Wenn sich an den Ausgangsdaten nichts ändert, muß die Pivot-Tabelle nicht jedesmal aktualisiert werden.
Gruß von Luschi
aus klein-Paris
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
06.11.2006 13:32:58
Ronny
Hi Luschi,
leider immernoch selbes Problem, daran hats wohl nicht gelegen. Übrigens einmal pro Tag ändert sich der Pivotbericht, da dort immer der Durchschnittstageswert vom Server über eine AddIn-funktion in die Tabelle geladen wird, woraus der Pivotbericht seine Werte bezieht.
Noch eine Idee?
Mfg,
Ronny
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche Feld
06.11.2006 12:24:29
Ronny
Hallo Luschi,
hab nochmal das ganze durchlaufen lassen in vba und bekomme die Meldung: "Außerhalb des gültigen Bereiches" bei der Zeile ...myArray(0) = "TWmw 1-126"...
Wissen musst du sicher auch dazu, dass ich von Spalte B bis IP die Pivottabellen laufen lasse, wegen der unmengen an Messungen und der Spaltenbegrenzung in Excel. Ist vielleicht dass das Problem? Bis zu welche Spalte maximal darf ich denn Daten einlesen, damit dein VB-Code funktioniert oder noch besser, was müßte man am VBA-Code ändern damit er dass kann, was der Pivotbericht bereits kann wenn man die Häkchen setzt? Probiere schon den ganzen Tag daran rum aber bekomms nicht hin, mir fehlen wohl die VBA-Kenntnisse dazu =(
Wohin muss ich eigentlich, dass mit den löschen der alten Pivotelemente reinkopieren, beim Modul oder in die Tabelle26? Weil habs mal in deiner Beispieldatei probiert und leider nix gesehen, also die ganzen Werte die im Pivotbericht da drin stehen, obwohl sie nicht mehr da sind, stehen immernoch da mein ich. Oder macht diese Funktion was vollkommen anderes?
Ich hoffe auf baldige Antwort ^^
Mfg,
Ronny
Anzeige
AW: Steuerung mehrerer PivotTabellen über gleiche
03.11.2006 15:38:21
fcs
Hallo Ronny,
ganz schön kompliziert was du dir da ausgedacht hast, um die auf mehrere Blätter verteilten Daten wieder in eine Liste zu schaffen.
Ich hab einen etwas anderen Vorschlag um die Daten aufzubereiten. Dazu müsstes du die Pivot-Tabellen optimiert an die gewünschte Aufgabenstellung anpassen. Dann wird das erforderliche Makro etwas mehr als ein 10-Zeiler
https://www.herber.de/bbs/user/37888.zip
Meiner Meinung nach kannst du die Daten aber auch ohne den Umweg über die Pivot-Tabellen für einen bestimmten Tag in die Tabelle "Stoffstromtabelle REA" einlesen und zwar per Formel mit WVERWEIS: Beispiel für Stoffstrom Nr. 1, Formel in Zelle H5:

=WVERWEIS(A5;'TWmw 1-126'!$C$2:$IV$11;VERGLEICH('REA Messwerte'!D1;'TWmw 1-126'!$B$2:$B$11;0);FALSCH)

in 'REA Messwerte'!D1 steht hier das gewünschte Datum mit Uhrzeit, das dann wie jetzt für die Pivot-Tabellen per Auswahlbox ausgewählt wird.
Diese Formel kannst du dann für jede Gruppe bzw. jedes der 4 Tabellenblätter nach unten kopieren.
Gruss
Franz
AW: Steuerung mehrerer PivotTabellen über gleiche
06.11.2006 10:30:03
Ronny
Hi Franz,
definitiv auch eine interessante Lösung! Leider übernimmt aber in deiner Bsp.-Datei der jeweilige Pivotbericht, nicht den Wert, den das Datum hat, sondern es steht immer der alte Wert vom 03.01.06 noch drin. Woran liegt dass und wie kann man dass so machen, dass es funktioniert? Außerdem gibt es ein Problem wenn ich MW asuwähle anstatt das Datum, denn dann will er immer Debuggen!?
Danke für deine Hilfe und ich hoffe auf baldige antwort und ein funktionierendes Bsp. ^^
Mfg,
Ronny
AW: Steuerung mehrerer PivotTabellen über gleiche
06.11.2006 15:31:10
Ronny
Hi Hansueli,
sieht nach einer super Lösung aus. Leider gehts noch nicht so richtig in meiner Datei. Also ich habe 1xPivotTabelle mehr als in den Bsp. und einige Messwerte mehr ^^
Also dass war der VBA-CODE den ich kopiert habe:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet
If Not (Target.Address = "$D$1") Then Exit Sub
For Each ws In ThisWorkbook.Worksheets
If Left(ws.Name, 4) = "TWmw" Then
ws.Range("D19").Value = Left(Target.Value, Len(Target.Value) - 3) & ""
End If
Next
End Sub

Nun hab ich meine große Datei den Muster angepasst wie du die Pivottabellen umgestellt hast und alles andere ebenfalls und mir deinen CODE in meine Datei kopiert, jeddoch hab ich in der Tabelle REA-Messwerte nicht dieses Extradatumsfeld zum auswählen. Wie hast du dass da hinbekommen? Glaub wenn ich dass dann auch habe, müßte es gehen deine Lösung ^^ Achja ich wäre dir dankbar wenn du mir ein bisschen erklären könntest was die einzelnen CODE-Zeilen tun, vielleicht verstehe ich dann besser das Problem und weis was bei mir noch anders ist ^^ (bin VBA Leihe, sorry)
Freue mich schon auf eine Antwort von dir ^^
Mfg,
Ronny
AW: Steuerung mehrerer PivotTabellen über gleiche
06.11.2006 15:32:05
Ronny
Hi Hansueli,
sieht nach einer super Lösung aus. Leider gehts noch nicht so richtig in meiner Datei. Also ich habe 1xPivotTabelle mehr als in den Bsp. und einige Messwerte mehr ^^
Also dass war der VBA-CODE den ich kopiert habe:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet
If Not (Target.Address = "$D$1") Then Exit Sub
For Each ws In ThisWorkbook.Worksheets
If Left(ws.Name, 4) = "TWmw" Then
ws.Range("D19").Value = Left(Target.Value, Len(Target.Value) - 3) & ""
End If
Next
End Sub

Nun hab ich meine große Datei den Muster angepasst wie du die Pivottabellen umgestellt hast und alles andere ebenfalls und mir deinen CODE in meine Datei kopiert, jeddoch hab ich in der Tabelle REA-Messwerte nicht dieses Extradatumsfeld zum auswählen. Wie hast du dass da hinbekommen? Glaub wenn ich dass dann auch habe, müßte es gehen deine Lösung ^^ Achja ich wäre dir dankbar wenn du mir ein bisschen erklären könntest was die einzelnen CODE-Zeilen tun, vielleicht verstehe ich dann besser das Problem und weis was bei mir noch anders ist ^^ (bin VBA Leihe, sorry)
Freue mich schon auf eine Antwort von dir ^^
Mfg,
Ronny
AW: Steuerung mehrerer PivotTabellen über gleiche
06.11.2006 15:58:49
EtoPHG
Hallo Ronny,
Also der Reihe nach:
1) Das Feld D1 in der Tabelle "REA Messwerte" ist über Daten-Gültigkeit mit einer Liste "ListeDatum" verknüpft
2) Die ListDatum bezieht sich auf den Datumsbereich der ersten Detailtabelle "TWmw 1-126" Spalte B7:B11 (entsprechend anpassen bei mehr Messwerten!)
3) Zum Code:
Es wird nur folgendes durchgeführt, wenn ins D1 ein Wechsel stattfindet:
a) Es werden alle Tabellenblätter der Mappe überprüft und wenn Name mit "TWmw" anfängt
b) Wird die Zelle D19 (Das ist die Datum-Auswahl-Zelle der Pivottabelle) mit dem Datumswert der in 1) ausgewählt wurde überschrieben und somit 'angepasst'.
Der Left-Befehl macht das Datum zu einem String (ohne die Sekunden), d.h. genau so, wie er in der Pivotauswahl auftaucht.
Gruss Hansueli
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 08:55:40
Ronny
Hi Hansueli,
woher hast du denn dieses ListeDatums-Feld von dem du sprichst bzw. wie bekomme ich dass in meine "REA Messwerte"-Tabelle rein? Hab nur den Code gesehen den ich hier oben auch gepostet habe! Außerdem hast du geschrieben dass ich den Datums-Bereich einstellen soll, was bei mir B7:B371 ist, aber wo in den oben geposteten Code muss ich dass reinschreiben???
Nimm bitte Rücksicht auf mich VBA-Leihe ^^
Gruß,
Ronny
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 09:09:06
EtoPHG
Hallo Ronny,
Das hat NICHTS mit VBA zu tun. Ist reines EXCEL (und da ist doch Dein Level gut).
...Datums-Bereich einstellen soll, was bei mir B7:B371 ist...
In Tabelle "TWmw 1-126" B7:B371 selektieren, dann Namensfeld (links Oben B7) mit ListeDatum überschreiben.
Oder: B7:B371 selektieren, dann Menu Einfügen - Namen - Definieren - ListeDatum
...dieses ListeDatums-Feld von dem du sprichst...
In Tabelle "REA Messwerte" auf D1 Menu Daten - Gültigkeit - Zulassen:Liste - Quelle:=ListeDatum
Gruss Hansueli
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 09:12:14
Ronny
Hi Hansueli,
hab mir dein "ListeDatum" Feld mal kopiert und bei Daten und dann Gültigkeit gesehen was du meintest mit ListeDatum verknüpft aber wo kann ich nun den Bereich einstellen dafür? bei Gültigkeit nicht wie es ausschaut???
Mfg,
Ronny
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 09:19:11
EtoPHG
Hallo Ronny,
Am besten lösche den Eintrag und erstelle ihn neu, gemäss diesen Angaben:
1. Menu Einfügen - Namen - Definieren - ListeDatum - Löschen
2. Blatt "TWmw 1-126" selektieren
3. Bereich B7:B371 selektieren
4. Menu Einfügen - Namen - Definieren - ListeDatum - OK
Jetzt kannst Du den Namen ListeDatum als Quelle in einer Gültigkeit brauchen, oder in einer Formel als Variable oder in VBA als Referenz zu einer Range oder.... etc. etc.
Gruss Hansueli
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 10:08:21
Ronny
Hi Hansueli,
dass sieht schonmal sehr gut aus ^^ Was müßte ich denn nun am VBA-Code ändern wenn ich das Datum im Zeilenbereich stehen lassen will? Ist übersichtlicher find ich. Und wie kann ich denn meine REA-Messwerte-Tabelle immer gleich automatisch aktuallisieren lassen wenn ich das Datum ändere in dem neuen Feld was du erstellt hattest???
Mfg,
Ronny
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 11:00:39
EtoPHG
Hallo Ronny,
... am VBA-Code ändern wenn ich das Datum im Zeilenbereich stehen lassen
Versteh ich nicht. Was willst Du wo, unter welchen Bedingungen stehen lassen? Kannst Du das ggf. an der Beispielmappe erläutern ? Meinst Du die Drop-Down-Liste, die kann ich leider nicht fixieren, da dies NICHT über VBA gesteuert ist !
.. wie kann ich denn meine REA-Messwerte-Tabelle immer gleich automatisch aktuallisieren
In der Tabelle "REA Messwerte" am Schluss

Next
ActiveSheet.PivotTables("REA Messwerte").RefreshTable
End Sub

Gruss Hansueli
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 11:56:13
Ronny
Hi Hansueli,
naja ist egal, habs jetzt so angepasst und kann das Datum auf im Seitenfeld des Pivotberichts stehen lassen. Hatte es vorher mit im Zeilenbereich wo die anderen Spaltenfelder stehen und wollte es halt dort erst lassen aber kann dass wie gesagt erstmal im Seitenfeld stehen lassen.
Das aktualliesieren funktioniert super und die endlich eine Lösung die nur 1 Minute Rechenzeit braucht. Interessant dabei ist, wenn ich die Pivotberichte der Reihe nach mit den Datum immer einzeln auswähle brauche ich etwa 30 Sekunden, d.h. die Funktion einmal Datum auswählen ist konfortabler aber auch langsamer irgendwie.
Was dir vielleicht in der Bsp.-Datei aufgefallen ist, dass ich nicht nur ein Datum sondern jeweils auch ein MW, MAX und MIN-Wert in der Pivottabelle auswählen kann. Leider übernimmt er dies aber nicht, da wir ja Bereich des Feldes "ListeDatum" nur auf das Datum ausgelegt haben. Nun hab ich einfach den Bereich verlängert um MW usw. und dann dies im Feld anschließend ansgewählt. Sobald ich dass tuhe kommt die Fehler-Meldung "Es gibt kein Element mit diesen Namen in dem Pivot-Table-Bericht.". Wie kann man das Problem lösen???
Und mein letztes Problem ist, dass im Pivotbericht ja jeden Tag Werte dazukommen und er diese nicht wie die Anderen vom kleinsten bis größen Wert sortiert, sondern immer ans Ende stellt im Auswahlfenster. Hast du eine Idee wie man dieses Auswahlfenster wieder so sortieren kann wie es der Pivotbericht beim erstellen von alleine tut und dass sagen wir jeden Tag einmal oder bei jeden Start der Datei.
Bin dir schonmal super dankbar für alles was du bis jetzt für mich getan hast!!! ^^
Gruß,
Ronny
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 13:44:57
EtoPHG
Hallo Ronny,
Ändere den inneren Teil des VBA Code so ab:

If Left(ws.Name, 4) = "TWmw" Then
If IsDate(Target.Value) Then
ws.Range("D19").Value = Left(Target.Value, Len(Target.Value) - 3) & ""
Else
ws.Range("D19").Value = Target.Value
End If
End If

Dann sollte es auch mit der erweiterten Liste funktionieren. Achtung die Adresse D19 stimmt vermutlich nicht mit Deinen Produktiv-Daten... also anpassen !
Das Problem mit dem Sortieren hab ich noch nicht gecheckt, bitte um mehr Infos oder Beispiel.
Gruss Hansueli
AW: Steuerung mehrerer PivotTabellen über gleiche
07.11.2006 14:58:23
Ronny
Hi Hansueli,
ja klappt jetzt super, tut auch die MW-Werte usw. mit auswählen in den Tabellen. Echt Prima Lösung!!! Danke dir nochmal ganz dolle dafür!
weiteres Problem:
Ich meinte wenn man bei REA-Messwerte gerne alle Messwerte nach einer bestimmten Hauptgröße (Messwert y1), welche es an einen bestimmten Tag x gegeben haben muss und ich diesen aber diesmal nich weis, sortieren lassen möchte, würde man wie folgt vorgehen:
1. Man wählt eine die Hauptgröße Messwert y1 aus, z.B. die Stoffstrom-Nr. 152 wie in der Bsp.-Excel-Datei von mir bzw. auch dir enthalten
2. anhand der Strom-Nr. schaut man nun logischweise in das Tabellenblatt TWmw 127-252 und trifft nun die Entscheidung ob man den normalen Messwert (immer ohne KW davor) oder den validierten Messwert (immer mit KW (=Korrektur-Wert) davor) als Führungsgröße nehmen will. Es wird in der Regel sicher immer der normale Messwert ausgewählt werden, da der andere nur dazu da ist einen realistischen Mittelwert zu bilden.
3. nun klickt man auf das Dreickeck im Privotbericht und es öffnet sich halt das Standardauswahlfenster, indem halt immer alle Werte sortiert eingetragen sind vom kleinsten bis größten Wert, so dass man schnell eine gewünschte Führungsgröße auswählen kann. Sobald man dies getan hat, soll man dann ein Datum zurückerhalten, nachdem sich wiederum die ganze Anlage einstellen soll. Als ich das Feld "Datum [Tag]" noch im Zeilenbereich stehen hatte wo alle anderen Spalten sind kam auch immer jeweils das gewünschte Datum zurück, sofern man vorher den Eintrag "alle" im Feld "Datum [Tag]" ausgewählt hatte. Wenn ich dass aber jetzt tuhe, erhalte ich im Feld Seitenfeld bei "Datum [Tag]" leider kein Datum mehr zurück! Was kann man da tun? Vielleicht ein zweites Datumsfeld anlegen, so dass ich eins in Seitenfeld stecken kann und eins in den Zeilenbereich? Hast ne gute Idee?
4. Anhand des zurückgelieferten Datums hätte man dann in der Tablle "REA-Messwerte" wieder die ganzen Messwerte auf den Tag eingestellt an den der Wert y1 halt war.
Sonderproblem dazu ist, dass jeden Tag ein Wert aus den Datenserver in die Tabellenblätter automatisch eingetragen wird (also der jeweilige Tagesdurchschnittswert) und somit dazukommt. Jedes mal wenn dies passiert hat nun der PivotTable-Bericht das Problem, dass er bei den Messwerten z.B. bei Strom.Nr. 152 aus unseren Bsp. alle dazugekommen Messwerte im Pivotbericht nicht automatisch mit einordnet (ich meine wenn man auf den Pfeil klickt und alle Werte sich auftun diese normalerweise geordnet sind von kleinsten bis größten Wert halt, so dass man übersichtlich den gewünschten Wert durch scrollen schnell finden kann), sondern diese immer ans Ende des Auswahlfensters setzt.
Wie kann man also alle Auswahlfenster des jeweiligen Berichts z.B. bei jeden Start von Excel automatisch so aktuallisieren lassen, dass er auch die neunen Messwerte mit einordnet von kleinsten bis größten Wert???
Hoffe du hast wieder gute Ideen ^^ Dass ist nämlich mein Endziel dieser Excel-Tabelle, um Verhaltensweisen der Messwerte nachzuvollziehen bei bestimmten Veränderungen ausgewählter Werte.
Grüße,
Ronny

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige