Nicht die Visible-Eigenschaft des PivotItem-Klasse (VBA -)
Ich versuche, mich zu manipulieren, eine Excel 2007-Pivot-Tabelle Trog VBA, so kann ich die Schleife durch die Kategorien der pivot-Tabelle, setzen Sie alle auf unsichtbar aber ein, speichern Sie das Blatt als pdf-Datei und gehen Sie weiter zur nächsten Kategorie. Für diese verwende ich das folgende Stück code.
Dim pf As PivotField
Set pf = ActiveSheet.PivotTables("PivotTable1").PivotFields("NAME")
Dim pi as PivotItem
For Each pi In pf.PivotItems
If pi.Visible = False Then
pi.Visible = True 'Error here
End If
Dim pi2 As PivotItem
For Each pi2 In pf.PivotItems
If pi2 <> pi Then
pi2.Visible = False
End If
Next pi2
'Saving to PDF goes here
Next pi
Die Schleife scheint zu funktionieren, das erste mal. Jede Kategorie wird deaktiviert, aber die erste und es gibt eine schöne PDF-Datei. Das nächste mal geht es in die Schleife jedoch gibt es ein "kann Nicht zum festlegen der Visible-Eigenschaft des PivotItem-Klasse" Fehler in der angegebenen Zeile. Ich bin der Tatsache bewusst, dass in einer pivot-Tabelle gibt, muss es mindestens ein Element ausgewählt, aber das ist nicht das problem hier, wie ich versuche, Sie setzen die Sichtbarkeit auf TRUE statt FALSE.
Ich habe versucht, es zu beheben, indem Sie eine Prüfung um Sie als vielleicht Sie sind nicht berechtigt, eine bereits sichtbare PivotItem sichtbar, aber das schien nicht zu funktionieren.
Jede Hilfe wäre sehr geschätzt werden!
Welche version von Excel verwendest du?
InformationsquelleAutor Stijnvdk | 2012-07-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist aufgrund der Pivot-Tabelle mit Hilfe der zwischengespeicherten pivot-Elemente, die anstelle der aktuellen eine. Stellen Sie sicher, dass die Tabelle nicht behalten alle alten Elemente. So zu tun, rechts-klicken Sie auf Ihrer pivot-Tabelle, klicken Sie auf die Registerkarte Daten, und legen Sie die "Anzahl der itesm zu behalten-pro-Feld" auf "None". Der code, dies zu tun in VBA ist:
InformationsquelleAutor Duc Pham
Ich weiß, das ist alt, aber möchte dazu beitragen für die Suche nach einer Lösung in der Zukunft.
Erlebte ich die gleiche Fehlermeldung, Lösung die ich fand war nur die pivottable aktualisieren, bevor Sie den pivotitem-Schleife.
Versuchen Sie die folgende Zeile des Codes:
InformationsquelleAutor whistler
Überprüfen Sie die PivotItem Orientierung. Ich glaube, dass Sie nicht setzen Sie Visible auf True, wenn die Ausrichtung ist xlHidden. Wenn es das ist, dann ändern Sie einfach die Ausrichtung auf etwas anderes zuerst.
InformationsquelleAutor RBarryYoung
Könnte es eine der folgenden:
Finden Sie unten ein Beispiel in C# von helper-Funktionen zum filtern einer pivot-Feld durch spezielle pivot-Elemente:
InformationsquelleAutor Michael