Thema Datum  Von Nutzer Rating
Antwort
03.03.2023 11:08:57 Le_Backflip
NotSolved
06.03.2023 11:08:59 Gast72991
NotSolved
Rot ClearAllFilters funktioniert trotz UserInterFaceOnly:=True nicht
07.03.2023 14:34:31 Grasi
Solved

Ansicht des Beitrags:
Von:
Grasi
Datum:
07.03.2023 14:34:31
Views:
346
Rating: Antwort:
 Nein
Thema:
ClearAllFilters funktioniert trotz UserInterFaceOnly:=True nicht

Die Fehlermeldung tritt auf, weil das Arbeitsblatt, auf dem sich die Pivot-Tabelle befindet, durch den Blattschutz geschützt ist. Wenn ein Arbeitsblatt mit Blattschutz geschützt wird, werden standardmäßig alle Elemente der Benutzeroberfläche, wie z. B. Schaltflächen, Eingabefelder usw., weiterhin aktiviert, aber Änderungen an der Arbeitsmappe durch VBA-Code sind nicht möglich. Wenn Sie den Blattschutz aktivieren, indem Sie die Option "UserInterFaceOnly:=True" verwenden, können Sie jedoch Änderungen an der Pivot-Tabelle durch VBA-Code vornehmen.

Um die Pivot-Tabelle zu ändern, müssen Sie den Blattschutz entfernen, bevor Sie Änderungen an der Pivot-Tabelle vornehmen. Sie können den Blattschutz durch den folgenden Code entfernen:


 

 

Dim myWorksheet As Worksheet For Each myWorksheet In ThisWorkbook.Worksheets myWorksheet.Unprotect Password:="Blattschutz" Next

Wenn Sie die Pivot-Tabelle geändert haben, können Sie den Blattschutz wieder aktivieren, indem Sie denselben Code verwenden, aber die "Protect" -Methode verwenden:


 

 

Dim myWorksheet As Worksheet For Each myWorksheet In ThisWorkbook.Worksheets myWorksheet.Protect Password:="Blattschutz", UserInterFaceOnly:=True Next

Sie können diesen Code in Ihre "Filter_Pivot" -Methode einfügen, um den Blattschutz vorübergehend zu entfernen und die Pivot-Tabelle zu ändern:

Sub Filter_Pivot()

Dim pTbl As PivotTable Dim pvFld As PivotField Dim strFilter As String

'Blattschutz entfernen Dim myWorksheet As Worksheet For Each myWorksheet In ThisWorkbook.Worksheets myWorksheet.Unprotect Password:="Blattschutz" Next

Set pTbl = Sheets("Pivot").PivotTables("PivotTable1") pTbl.ClearAllFilters

Set pvFld = Sheets("Pivot").PivotTables("PivotTable1").PivotFields("Werkzeug") strFilter = ActiveWorkbook.Sheets("UserInterface").Range("B5").Value

pvFld.PivotFilters.Add2 xlCaptionContains, , strFilter

Sheets("Pivot").Select

ActiveWindow.ScrollRow = 1

'Blattschutz wieder aktivieren For Each myWorksheet In ThisWorkbook.Worksheets myWorksheet.Protect Password:="Blattschutz", UserInterFaceOnly:=True Next

End Sub

Beachten Sie jedoch, dass das Entfernen des Blattschutzes ein potenzielles Sicherheitsrisiko darstellen kann, da Benutzer möglicherweise unerwünschte Änderungen an der Arbeitsmappe vornehmen können. Sie sollten daher sicherstellen, dass Ihre Arbeitsmappe an einem sicheren Ort gespeichert ist und nur von vertrauenswürdigen Personen bearbeitet wird.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
03.03.2023 11:08:57 Le_Backflip
NotSolved
06.03.2023 11:08:59 Gast72991
NotSolved
Rot ClearAllFilters funktioniert trotz UserInterFaceOnly:=True nicht
07.03.2023 14:34:31 Grasi
Solved