Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Filtro Tabella PIVOT

Ultimo Aggiornamento: 30/05/2019 13:46
Post: 1
Registrato il: 20/03/2019
Città: CASTELLO D'AGOGNA
Età: 57
Utente Junior
2016
OFFLINE
30/05/2019 11:59

Buongiorno a tutti
Premetto non sono un esperto di VBA

ho generato 4 tabelle pivot nello stesso foglio
e in tutte e 4 le tabelle pivot ho lo stesso campo "CEN" che è nel filtro.
premetto che il campo CEN contiene 1041 voci.

ho l'esigenza di filtrare una sola voce oppure tutte , sempre per il campo CEN
quindi in un foglio riepilogo ho inserito una combobox che contiene tutti i valori del campo CEN , una volta selezionato in valore desiderato nella combobox e cliccando il pulsate ATTIVA filtro eseguo una macro VBA

Sheets("LOC").Select
x = Range("d1").Value


Sheets("PIVOT LOC").Select

ActiveSheet.PivotTables("Tabella pivot1").ManualUpdate = True

ActiveSheet.PivotTables("Tabella pivot1").PivotFields("Cen").CurrentPage = _
"(All)"
With ActiveSheet.PivotTables("Tabella pivot1").PivotFields("Cen")
.PivotItems("Aquila").Visible = False
.PivotItems("Baveno").Visible = False
.PivotItems("Bellagio").Visible = False
.PivotItems("Bologna").Visible = False
.PivotItems("Cagliari").Visible = False
.PivotItems("Cefalu").Visible = False
.PivotItems("Oristano").Visible = False
si ripete x 1041 voci
End With
With ActiveSheet.PivotTables("Tabella pivot1").PivotFields("Cen")
.PivotItems(x).Visible = True
end with


premetto che funziona correttamente ma i tempi di elaborazione sono biblici...
infatti occorre scrivere 1041 item messi a visible=false e poi mettere visibile=true quello interessato x 4 pivot ....

e poi per vedere tutto riscrivere il tutto x a true...

vorrei sapere se vi è la possibilità di mettere tutti gli item a visible=false nello stesso momento e viceversa.

non posso allegare il file in quanto vi sono dati sensibili...

grazie per l'aiuto che mi darete.
Alberto





Post: 2.233
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
30/05/2019 13:04

Ciao
è un problema della modalità filtro dell'area filtri delle pivot che offre solo la possibilità di seleziona 1 o più elementi.

Prova qualcosa del genere:

ActiveSheet.PivotTables("Tabella Pivot1").PivotFields("cen").ClearAllFilters
Set MioCampo = ActiveSheet.PivotTables("Tabella Pivot1").PivotFields("cen")
MioCampo.CurrentPage = "Aquila"


è un esempio che toglie tutti i filtri al campo "cen" e lo filtra con "Aquila".
Ovviamente ad Aquila sostituirai la variabile che contiene il nome da filtrare.

Se invece il campo "cen" al posto di metterlo nel filtro lo metti nelle righe, il relativo filtro contiene tutte le possibilità di fare quello che vuoi senza ricorrere al vba.

saluti



[Modificato da dodo47 30/05/2019 13:08]
Domenico
Win 10 - Excel 2016
Post: 1
Registrato il: 20/03/2019
Città: CASTELLO D'AGOGNA
Età: 57
Utente Junior
2016
OFFLINE
30/05/2019 13:46

filtro tabella Pivot
Grandioso !!!funziona perfettamente

Grazie

Alberto
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
No filtro no Tabella Pivot (11 messaggi, agg.: 09/02/2017 13:45)
Filtro Tabella PIVOT (3 messaggi, agg.: 14/06/2019 14:49)
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 14:53. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com