Filtro Rapporto Personalizzato
Hai un problema con Excel? 
Filtro Rapporto "Personalizzato"
di martello_84 data: 04/01/2015 17:22:45
Ciao a tutti,
sto cercando di utilizzare i filtri delle tabelle Pivot in VBA.
Io vado a filtrare tra tutti i campi quelli di Novembre indicando 11.2014 come condizione "Start Date"..
Se però "Start Date" anziché Filtro Pivot (banalmente etichetta di riga) lo uso come Report Filter (Filtro Rapporto) non funziona più e non sono riuscito a trovare il modo corretto per farlo.
Potreste darmi qualche consiglio?
Grazie a tutti, Marco
Sheets("PIVOT").Select
ActiveWorkbook.RefreshAll
ActiveSheet.PivotTables("Tabella_pivot1").ClearAllFilters
Range("F08").Select
ActiveCell.FormulaR1C1 = "=CONCATENATE('Calcoli'!R2C15,""."",'Calcoli'!R3C15)"
ActiveSheet.PivotTables("Tabella_pivot1").PivotFields("Start Date"). _
PivotFilters.Add Type:=xlCaptionContains, Value1:=Range("F08").Value
Range("F08").Select
Selection.ClearContents
|
di Vecchio Frac data: 04/01/2015 17:39:20
Non siamo nelle condizioni di ricreare la tua situazione.
Se puoi preparare un file di esempio con dati fittizi e allegarlo, è meglio.
(Sei costretto a usare VBA o puoi impostare manualmente l'interrogazione della pivot?)
di martello_84 data: 05/01/2015 02:30:25
Ho messo un file di esempio (col codice incluso).
Nel file di test occorre indicare nello sheet "Calcoli" il numero del mese (9, 10 oppure 11) che viene letto ed usato nella macro.
Nel secondo allegato (Test 2) c'è la tabella Pivot così come la vorrei.
Ho usato VBA per ottenere i dati riassunti mensilmente all'interno di una macro che comprende altri passaggi (caricamento dati del mese, aggiornamento dello storico, aggiornamento pivot, vari calcoli e grafici).
Vorrei mantenere la pivot di Test 2 perché in tal modo è "consultabile" per i dettagli dei mesi precedenti.
Se servono altre indicazioni chiedi pure, intanto ti ringrazio per l'interessamento.
Marco
di Grograman data: 05/01/2015 09:55:57
Ma usare un campo in più nella pivot?
Puoi usare il concatena direttamente nel DB dati, con un "trova" stabilisci se la stringa concatenata è presente nella start date, a quel punto una volta messo nella pivot il suddetto campo basta aggiornare la stessa e avrai applicato il filtro
Allego esempio (TestGro), ho aggiunto questa formula nella colonna H del foglio "Historical" e modificato come segue il codice:
=VAL.ERRORE(TROVA(CONCATENA(Calcoli!$O$2;".";Calcoli!$O$3);C2))
Codice:
Sub Aggiorna_Dati()
Sheets("PIVOT").PivotTables("Tabella_pivot1").PivotCache.Refresh
End Sub
|
Vuoi Approfondire?