Dynamisches Ändern von Pivottabellennamen in Excel
Schritt-für-Schritt-Anleitung
Um Pivottabellennamen dynamisch in Excel zu ändern, kannst du den folgenden VBA-Code verwenden. Dieser Code erstellt eine Liste aller Pivottabellen in deiner Arbeitsmappe und ermöglicht dir, neue Namen in einer Spalte einzugeben.
- Öffne Excel und drücke
ALT + F11
, um den VBA-Editor zu starten.
- Füge ein neues Modul hinzu (
Einfügen > Modul
) und kopiere den folgenden Code hinein:
Sub Pivotnames_change()
Dim wb As Workbook
Dim ws As Worksheet
Dim wsList As Worksheet
Dim pt As PivotTable
Dim lPT As Long
Set wb = ActiveWorkbook
Set wsList = Worksheets.Add
With wsList
.Range(.Cells(1, 1), .Cells(1, 4)).Value = Array("Sheet", "PivotTable", "Source Data", "New Names")
End With
lPT = 2
For Each ws In wb.Worksheets
For Each pt In ws.PivotTables
With wsList
.Range(.Cells(lPT, 1), .Cells(lPT, 3)).Value = Array(ws.Name, pt.Name, pt.SourceData)
End With
lPT = lPT + 1
Next pt
Next ws
With wsList
.Columns("A:C").EntireColumn.AutoFit
.Rows(1).Font.Bold = True
End With
MsgBox "Jetzt neue Pivottabellennamen in Spalte D eingeben."
' Hier wird der Code zum Umbenennen eingefügt
End Sub
- Führe den Code aus, um eine Liste aller Pivottabellen zu erstellen.
- Gib neue Pivottabellennamen in die Spalte D ein.
- Füge den folgenden Code hinzu, um die Namen zu aktualisieren:
For lPT = 2 To wsList.Cells(wsList.Rows.Count, 1).End(xlUp).Row
Set ws = wb.Sheets(wsList.Cells(lPT, 1).Text)
Set pt = ws.PivotTables(wsList.Cells(lPT, 2).Text)
pt.Name = wsList.Cells(lPT, 4).Text
Next lPT
Häufige Fehler und Lösungen
Alternative Methoden
Eine Alternative ist die Verwendung eines UserForms zur Eingabe der neuen Pivottabellennamen. Dies kann die Eingabe erleichtern, insbesondere wenn du viele Pivots hast. Der UserForm kann mit einem Button verbunden werden, der das Umbenennen der Pivottabellen auslöst.
Hier ein Beispiel für den UserForm:
' UserForm Code für das Umbenennen
Private Sub btnRename_Click()
' Hier wird der Umbenennungsprozess gestartet
End Sub
Praktische Beispiele
Angenommen, du hast 180 Pivottabellen und möchtest sie umbenennen. Fülle die Spalte D mit Namen wie "Pivot1", "Pivot2", ..., "Pivot180". Der oben genannten Code wird dann die neuen Namen automatisch übernehmen.
Tipps für Profis
- Nutze die Funktion
On Error Resume Next
vorsichtig, um Fehler zu ignorieren, die während der Ausführung deines Codes auftreten könnten.
- Mache regelmäßig Backups deiner Arbeitsmappe, bevor du umfangreiche Änderungen vornimmst.
- Teste den Code in einer kleinen Testdatei, bevor du ihn auf eine große Arbeitsmappe anwendest.
FAQ: Häufige Fragen
1. Wie kann ich sicherstellen, dass die neuen Namen gültig sind?
Verwende die Funktion fncCheckname
im Code, um zu prüfen, ob der neue Name bereits für eine andere Pivot-Tabelle verwendet wird.
2. Kann ich die Namen direkt in Excel eingeben, anstatt eine InputBox zu verwenden?
Ja, du kannst die neuen Namen in einer separaten Spalte (z.B. Spalte D) eingeben und dann den Code zur Umbenennung ausführen.