• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

datafilter in draaitabel resetten

Status
Niet open voor verdere reacties.

bossies

Nieuwe gebruiker
Lid geworden
30 nov 2010
Berichten
3
Hallo,

Ik heb een vraag over mijn draaitabel.

ik heb een draaitabel van blad 1. wanneer ik blad 1 leegmaak en mijn draaitabel vernieuw dan is hij leeg, maar mijn data filter in het draaitabel geeft nog steeds alle data weer.
Hoe krijg ik deze data uit mijn filter.

Groet Bossie
 
dat zal je met VBA moeten doen. Zet dit in een gewone module en zet eventueel een knop ergens in je werkblad
Code:
Public Sub DeleteUnusablePivotItems()
' This will delete all items that appear in
' the filter list of a pivot table, but is not
' anymore in the pivot table.
  On Error Resume Next
  Application.ScreenUpdating = False
  Dim ws       As Excel.Worksheet
  Dim pvtTable As Excel.PivotTable
  Dim pvtField As Excel.PivotField
  Dim pvtItem  As Excel.PivotItem

  ' First loop through all worksheets
  For Each ws In ThisWorkbook.Worksheets
    ' Now loop through all pivotTables
    For Each pvtTable In ws.PivotTables
      ' Refresh the table
      pvtTable.RefreshTable
      ' Now loop through all pivotFields
      For Each pvtField In pvtTable.PivotFields
        ' Now loop through all items and delete
        ' the unnecessary ones
        For Each pvtItem In pvtField.PivotItems
          pvtItem.Delete
        Next
      Next
    Next
  Next
  Application.ScreenUpdating = True
End Sub
 
En mocht je niet met VBA overweg kunnen, dan kun je je draaitabel aanpassen zodat er geen enkel veld meer in de draaitabel voorkomt, maar alleen de data in het Gegevensgebied. Ververs je draaitabel en bouw 'm weer op. Vraagt wat meer handwerk.

Richard
 
kan ik dit gewoon in een macro zetten???



dat zal je met VBA moeten doen. Zet dit in een gewone module en zet eventueel een knop ergens in je werkblad
Code:
Public Sub DeleteUnusablePivotItems()
' This will delete all items that appear in
' the filter list of a pivot table, but is not
' anymore in the pivot table.
  On Error Resume Next
  Application.ScreenUpdating = False
  Dim ws       As Excel.Worksheet
  Dim pvtTable As Excel.PivotTable
  Dim pvtField As Excel.PivotField
  Dim pvtItem  As Excel.PivotItem

  ' First loop through all worksheets
  For Each ws In ThisWorkbook.Worksheets
    ' Now loop through all pivotTables
    For Each pvtTable In ws.PivotTables
      ' Refresh the table
      pvtTable.RefreshTable
      ' Now loop through all pivotFields
      For Each pvtField In pvtTable.PivotFields
        ' Now loop through all items and delete
        ' the unnecessary ones
        For Each pvtItem In pvtField.PivotItems
          pvtItem.Delete
        Next
      Next
    Next
  Next
  Application.ScreenUpdating = True
End Sub
 
ik probeer toch eerst iets makkelijker te vinden, maar hou het wel even in mijn achterhoofd.


En mocht je niet met VBA overweg kunnen, dan kun je je draaitabel aanpassen zodat er geen enkel veld meer in de draaitabel voorkomt, maar alleen de data in het Gegevensgebied. Ververs je draaitabel en bouw 'm weer op. Vraagt wat meer handwerk.

Richard
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan