Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Pivot aktualisieren
#1
Hallo Forum,
ich arbeite "antiquarisch" mit Excel XP und habe eine Frage zur Aktualisierung von Pivot-Tabellen

Ausgangslage:
Ich habe eine Tabelle, daraus erstelle ich ein Pivot.
Soweit so gut.

Wenn ich aber in der Ursprungstabelle nun eine Änderung habe, sei es Ergänzung, Löschung einer Zeile oder Änderung eines Wertes, muss ich dann ein komplett neues Pivot erstellen, oder aber gibt es einen Trick, dass die bestehende Pivot auf den neuesten Stand automatisiert wird?

Wenn ja, wie gehe ich vor?

Axel
Antworten Top
#2
Hi,

(05.04.2016, 12:24)axel18 schrieb: Wenn ich aber in der Ursprungstabelle nun eine Änderung habe, sei es Ergänzung, Löschung einer Zeile oder Änderung eines Wertes, muss ich dann ein komplett neues Pivot erstellen, oder aber gibt es einen Trick, dass die bestehende Pivot auf den neuesten Stand automatisiert wird?

im aktuellen Excel geht es so:
  1. Rechtsklick auf die Pivot und im Kontextmenü "aktualisieren" auswählen.
  2. oder in der Pivot-Menüleiste Pivot "Analysieren" den Button "Aktualisieren"
Schritt 2 wird im XP vermutlich nicht gehen

Oder per Makro:
Sub Pivot_aktualisieren()
   ' 
   ' Pivot_aktualisieren: alle Pivot einer einzelnen Tabelle 
   ' © 21.09.2011, Ralf 
   ' Aufgerufen mit Worksheet_Activate() im betreffenden Tabellenblatt 
   ' 
   Dim pt As PivotTable
   ' 
 
      'Alle Pivot-Tabellen eines Tabellenblattes durchlaufen 
      For Each pt In ActiveSheet.PivotTables
         
         'Den PivotCache der PT aktualisieren 
         pt.PivotCache.Refresh
      Next pt
   
End Sub

Sub AllePivotTabellenaktualisieren()            ' © Thomas Ramel 
   'Variablen deklarieren 
   Dim ws                        As Worksheet
   Dim pt                        As PivotTable
   
   'Alle Tabellenblätter der Mappe durchlaufen 
   For Each ws In ActiveWorkbook.Worksheets
      
      'Alle Pivot-Tabellen eines Tabellenblattes durchlaufen 
      For Each pt In ws.PivotTables
         
         'Den PivotCache der PT aktualisieren 
         pt.PivotCache.Refresh
      Next pt
   Next ws
End Sub

Microsoft Excel Objekt Tabelle16
Option Explicit 
 
Private Sub Worksheet_Activate() 
   Call Pivot_aktualisieren 
End Sub 
 
 

Antworten Top
#3
Hallo,

du musst einen dynamischen Datenbereich definieren und dann funktioniert auch bei einer Erweiterung der Datentabelle die Aktualisierung.

Schau mal hier:

http://www.online-excel.de/excel/singsel.php?f=69

Da ist der Vorgang beschrieben im Abschnitt 'Abhilfe für alle Excelversionen: Datenbankbereich über Namensdefinition dynamisieren'

Bei aktuellen XL-Versionen ist das deutlich einfacher gelöst - was dir jetzt natürlich nicht viel nützt.
Gruß
Peter
Antworten Top
#4
Danke an Euch beide,

über Peters Hinweis habe ich die Lösung am schnellsten erreicht.

Einen schönen Tag wünsche ich Euch
Axel
Idea
Antworten Top
#5
Hallo Peter und andere Fachleute,

sorry, ich war gestern (13:51h) wohl voreilig!!
Die Aktualisierung klappt, wenn ich in der Haupttabelle Werte ändere.

Füge ich aber Zeilen dieser Tabelle hinzu, dann klappt das nicht.
Ich habe die Formel:

=BEREICH.VERSCHIEBEN($A$1;;;ANZAHL2($A:$A);ANZAHL2($1:$1))

eingegeben und bekomme die Meldung:

Verweis ist ungültig!

Mit Verweis ist wohl "Datenbank" gemeint.

Was mache ich falsch?
Axel
Huh
Antworten Top
#6
Hallo,

schwierig ohne die Tabelle zu kennen aber du könntest mal folgendes schauen:

Gehe in den Namensmanager und schau dir mal die Formel an die du eingegeben hast. Hat XL evtl. diese Formel in Anführungszeichen gesetzt? Wenn ja, dann entferne mal diese Anführungszeichen und probiere es erneut.

Wenn das nicht hilft könntest du mal eine abgespeckte und anonymisierte Beispielsdatei hochladen damit man sich das direkt am Objekt ansehen kann.
Gruß
Peter
Antworten Top
#7
Hola,

siehe auch:

http://www.online-excel.de/fom/fo_read.php?f=1&bzh=0&h=85820#a123x

Gruß,
steve1da
Antworten Top
#8
Hallo Peter,
ich habe mal meine Datei "abgespeckt" und rund 40 Datensätze belassen.
Gemäss Empfehlung habe ich über "Einfügen-Namen-Definieren" als Namen "Datenbank" eingegeben. In der unteren Zeile steht dann automatisch:
"=Test!$A$43"

Will ich nun eine Pivot-Tabelle machen, bekomme ich eine Fehlermeldung gemäss Screenshot.

Nochmals, was mache ich unter XP falsch?

Danke
Axel


Angehängte Dateien Thumbnail(s)
   

.xls   Test.xls (Größe: 33 KB / Downloads: 2)
Antworten Top
#9
Hallo,

Zitat: In der unteren Zeile steht dann automatisch:
"=Test!$A$43"

Und dann schreibst du dort, bei "Bezieht sich auf:" einfach die Formel rein die in dem verlinkten Beitrag steht:

=BEREICH.VERSCHIEBEN($A$1;;;ANZAHL2($A:$A);ANZAHL2($1:$1))

Und dann sollte das eigentlich funktionieren.


Angehängte Dateien
.xlsx   Kopie von Test-1.xlsx (Größe: 16,36 KB / Downloads: 5)
Gruß
Peter
Antworten Top
#10
Hallo Peter,

ich weiss zwar nicht, wie Du das gemacht hast, denn wenn ich es an "meiner" Tabelle genauso nachvollziehe, dann klappt es nicht.

Spielt eventuell die Reihenfolge der Eingabe eine Rolle?

Ich habe
- die Tabelle
- ändere die "EInfügen-Namen-Definition"
- erstelle die Pivot, wobei ich die Formel    

=BEREICH.VERSCHIEBEN($A$1;;;ANZAHL2($A:$A);ANZAHL2($1:$1))

eingebe, und dann tut sich nichts??!?!?!?

Ich habe für mich aber einen "billigen" Trick gefunden, indem ich meine Originaldaten in Deine Tabelle kopiert habe.
Füge ich jetzt Zeilen bei und lasse Pivot aktualisieren, dann funktioniert das?

Ich verstehe es nicht!!!

Trotzdem herzlichen Dank für die Unterstützung
Axel
Antworten Top


Gehe zu:


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