Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Pivot: Auswahl umbenennen rückgängig?

Pivot: Auswahl umbenennen rückgängig?
23.11.2006 23:21:56
Benno
Ich habe folgendes Problem mit einer Pivot-Tabelle:
Ich nutze eine Zeiterfassungstabelle, die ich mit einer Pivot-Tabelle auswerte. Die Arbeitszeit fasse ich über Projektnummern im Seitenbereich der Pivot-Tabelle zusammen. Per Auswahlliste lassen sich einzelne Projektnummern auswählen. Soweit alles gut.
Inzwischen ist diese Auswahlliste angewachsen (mehrere 100 Einträge) und ich bin dazu übergegangen, die gewünschten Projektnummern direkt in die Auswahlzelle einzutragen - geht so viel schneller. Wenn ich mich mal vertippe, kommt ein Fehlermeldung:
"Es gibt kein Element mit diesem Namen in dem PivotTable-Bericht. 'xxxxx' in 'yyyyy' umbenennen?"
Das will ich natürlich nicht! Wenn ich aber (versehentlich) doch abnicke (OK), wird der vertippte Eintrag in die Auswahlliste übernommen und der "richtige" verschwindet für alle Zeiten. Ich habe bisher keine Möglichkeit gefunden, wie man das wieder rückgängig machen kann! Ich kann nicht einmal prüfen, ob ich mir vielleicht in der Vergangenheit schon ein paar Einträge abgeschossen habe.
Im Forum habe ich einen Tipp gefunden (www.herber.de/forum/messages/613876.html),
mit dem man ungülitge (also nicht mehr vorhandene) Einträge per VBA aus der Auswahlliste wegbekommt. Das funktioniert auch prima, aber leider nur für ungültige, nicht aber für umbenannte Einträge.
Weiß da jemand Rat?
Benno
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pivot: Auswahl umbenennen rückgängig?
24.11.2006 05:24:46
Luschi
Hallo Benno,
mit dem folgenden Vba-Code kann man die Umbenennung wieder rückgängig machen.
Vorher aber eine Sicherungskopie der Exceltabelle erstellen.
Der Code kommt in ein normales Module.
Für ws, pt und pf mußt Du noch die Einträge anpassen!
Sub setzenOriginalEintraege()
Dim wb As Workbook, ws As Worksheet
Dim pt As PivotTable, pf As PivotField, pi As PivotItem
Dim s1 As String, s2 As String
''aktuelle Arbeitsmappe
Set wb = ThisWorkbook
''Tabelle, in der sich die PivotTabelle befindet
Set ws = wb.Worksheets("Tabelle1")
''PivotTabelle
Set pt = ws.PivotTables("PivotTable1")
''PivotFeld
Set pf = pt.PivotFields("ProjektNr")
''alle Einträge durchlaufen
For Each pi In pf.PivotItems
If pi.Caption <> pi.SourceName Then
'Original-Eintrag wieder setzen
pi.Caption = pi.SourceName
End If
Next pi
''PivotTabelle aktualisieren
pt.PivotCache.Refresh
''Arbeitsmappe speichern
wb.save
Set pi = Nothing
Set pf = Nothing
Set pt = Nothing
Set ws = Nothing
Set wb = Nothing
End Sub
Gruß von Luschi
ais klein-Paris
Anzeige
AW: Pivot: Auswahl umbenennen rückgängig?
24.11.2006 05:29:39
Coach
Hallo Benno,
folgendes Procedere sollte dem abhelfen:
1) eine identische Datentabelle wie Deine Originaldaten aber ohne Daten anlegen (im Prinzip also nur die Feldbezeichnungen und eine leere Zeile)
2) Deine Pivot auf diesen Bereich referenzieren und ggf. aktualisieren (sollte automatisch passieren)
3) den Code von Beate aus www.herber.de/forum/messages/613876.html laufen lassen
4) die Pivot auf Deine originale Daten referenzieren + ggf aktualisieren
5) Hilfstabelle löschen
Viele Grüße
Coach
Anzeige
AW: Pivot: Auswahl umbenennen rückgängig?
24.11.2006 09:53:00
Benno
Hallo Luschi und Coach,
vielen Dank für eure Hilfen (wann schlaft ihr eigentlich...)
Ich habe das gerade Script von Luschi ausprobiert, es scheint zu funktionieren! Zumindest sind meine bekannten Falscheinträge korrigiert. Super!!!
Die Lösung von Coach habe ich danach nicht mehr probiert, finde sie aber ganz pfiffig und für mich auch als VBA-Unwissenden leichter nachvollziehbar! Danke auch dafür!
Gruß
Benno
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Auswahl in Pivot-Tabelle umbenennen rückgängig machen


Schritt-für-Schritt-Anleitung

Um die Auswahl in einer Pivot-Tabelle rückgängig zu machen, kannst du folgenden VBA-Code verwenden. Achte darauf, eine Sicherungskopie deiner Excel-Datei zu erstellen, bevor du den Code ausführst.

  1. Öffne die Excel-Datei mit der Pivot-Tabelle.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  4. Kopiere den folgenden VBA-Code in das Modul:

    Sub setzenOriginalEintraege()
       Dim wb As Workbook, ws As Worksheet
       Dim pt As PivotTable, pf As PivotField, pi As PivotItem
    
       ' Aktuelle Arbeitsmappe
       Set wb = ThisWorkbook
       ' Tabelle, in der sich die Pivot-Tabelle befindet
       Set ws = wb.Worksheets("Tabelle1")
       ' Pivot-Tabelle
       Set pt = ws.PivotTables("PivotTable1")
       ' Pivot-Feld
       Set pf = pt.PivotFields("ProjektNr")
    
       ' Alle Einträge durchlaufen
       For Each pi In pf.PivotItems
           If pi.Caption <> pi.SourceName Then
               ' Original-Eintrag wieder setzen
               pi.Caption = pi.SourceName
           End If
       Next pi
    
       ' Pivot-Tabelle aktualisieren
       pt.PivotCache.Refresh
       ' Arbeitsmappe speichern
       wb.Save
    
       Set pi = Nothing
       Set pf = Nothing
       Set pt = Nothing
       Set ws = Nothing
       Set wb = Nothing
    End Sub
  5. Passe die Variablen ws, pt und pf an deine Daten an.

  6. Schließe den VBA-Editor und führe das Makro über Entwicklertools > Makros aus.


Häufige Fehler und Lösungen

  • Fehler: "Es gibt kein Element mit diesem Namen in dem PivotTable-Bericht."
    Lösung: Überprüfe, ob der eingegebene Name tatsächlich in der Datenquelle vorhanden ist. Falsche Einträge müssen möglicherweise manuell entfernt werden.

  • Fehler: Die Pivot-Tabelle wird nicht aktualisiert.
    Lösung: Stelle sicher, dass du nach dem Ausführen des Codes die Pivot-Tabelle aktualisierst. Dies kannst du über Daten > Aktualisieren tun.


Alternative Methoden

Eine weitere Möglichkeit, um die Auswahl in einer Pivot-Tabelle rückgängig zu machen, ist die Erstellung einer Hilfstabelle:

  1. Erstelle eine identische Datentabelle ohne Daten (nur die Feldbezeichnungen).
  2. Verlinke die Pivot-Tabelle auf diese leere Tabelle.
  3. Führe den oben genannten VBA-Code aus.
  4. Verlinke die Pivot-Tabelle wieder auf die Originaldaten.

Diese Methode kann besonders nützlich sein, wenn du häufig Änderungen an deiner Pivot-Tabelle vornimmst und eine schnelle Rückkehr zu den Originaldaten benötigst.


Praktische Beispiele

Ein praktisches Beispiel wäre eine Zeiterfassungstabelle, in der du Projektzeiten über Projektnummern auswertest. Wenn du eine Projektnummer versehentlich umbenennst und diese Änderung nicht rückgängig machen kannst, hilft dir der VBA-Code, die ursprünglichen Projektnamen wiederherzustellen.


Tipps für Profis

  • Sichere deine Daten regelmäßig: Mache regelmäßig Sicherungskopien deiner Excel-Dateien, insbesondere wenn du mit Pivot-Tabellen arbeitest.
  • Nutze Kommentare: Füge Kommentare in deinen VBA-Code ein, um Klarheit über die Funktionsweise zu schaffen.
  • Teste den Code: Führe den VBA-Code zuerst in einer Testdatei aus, um sicherzustellen, dass alles wie gewünscht funktioniert, bevor du ihn in einer wichtigen Datei anwendest.

FAQ: Häufige Fragen

1. Kann ich die Umbenennung in einer Pivot-Tabelle auch ohne VBA rückgängig machen?
Leider gibt es in Excel keine direkte Möglichkeit, die Umbenennung in einer Pivot-Tabelle ohne VBA rückgängig zu machen.

2. Was passiert, wenn ich die falschen Daten aus der Auswahlliste entfernt habe?
Du kannst die Daten wiederherstellen, indem du die Originaldaten überprüfst und die korrekten Einträge manuell hinzufügst.

3. Funktioniert dieser Code in allen Excel-Versionen?
Der VBA-Code sollte in den meisten modernen Excel-Versionen funktionieren. Stelle sicher, dass du die Pivot-Tabelle und die Arbeitsblattnamen an deine Datei anpasst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige