Condividi:        

[EXCEL] Togliere tutti i campi da una tabella pivot

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Wikipino » 17/11/14 16:42

Ciao a tutti
Mi serve un aiuto su excel 2010
Ho una tabella pivot gigantesca con ben 74 campi valore e 31 campi nel filtro rapporto
Quando apro questa pivot spesso ho bisogno di leggere solo alcuni di questi campi valore ( 5 o 6 campi )
Nelle versioni precedenti di excel era possibile deselezionare tutti i campi valore con un click e selezionare solo quei pochi che si desiderava vedere
Mentre con excel 2010 bisogna clickare su ognuno e poi selezionare “rimuovi campo”.
Inutile dire che con 74 campi si diventa matti
Sapete se esiste un sistema rapido per selezionare solo pochi campi oppure come posso scrivere una macro che tolga tutti i campi valore in modo che io poi possa rimettere solo quelli che mi interessano ?

Informazioni importanti
La tabella non la produco io quindi non ho accesso al database
In realtà mi servirebbe agire su diverse tabelle tutte con lo stesso numero di campi per cui una eventuale macro dovrebbe essere generica ovvero valere per tutte le tabelle pivot presenti nel foglio attivo , non posso scrivere nella macro il nome della tabella pivot perché potrebbe variare

Sapete aiutarmi ?
Grazie in anticipo e spero che la mia richiesta sia chiara
Wikipino
Utente Junior
 
Post: 19
Iscritto il: 10/11/14 15:24

Sponsor
 

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Flash30005 » 18/11/14 07:56

Non ho tabelle pivot o almeno non così complesse
sarebbe opportuno che inviassi almeno un file esempio indicando i campi che ti occorrono

per l'invio del file usa questo server

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Wikipino » 18/11/14 19:25

Purtroppo non posso allegare la pivot vera perchè si tratta di dati della mia ditta che non posso divulgare
a titolo di esempio per farmi capire ne ho creata una totalmente inventata che però ha le stesse logiche anche se dimensioni molto inferiori alla pivot vera ( i campi e le righe del database sono molto minori perchè avrei impiegato un'eternità a ricrearne una inventata delle stesse dimensioni )
però il concetto è lo stesso
il file è questo
http://www.filedropper.com/pivotesempio
in questa pivot ho 14 campi valore, di cui alcuni sono valori del database ,altri sono campi calcolati
diciamo che io voglio visualizzare solo i campi "numero di capi venduti" , "costo unitario" e "ricavo tot netto"

come ho detto , con le versioni precedenti di excel si poteva deselezionare tutti i campi valore con un solo click e poi selezionare quelli che interessavano se erano pochi
con excel 2010 ( che io sappia ) bisogna eliminare dalla visualizzazione della tabella i campi uno alla volta.
cosa che, se si tratta di pochi campi , è fattibile , ma se si tratta di più di 70 campi valore, diventa un incubo
quindi mi chiedevo se si potesse fare con una macro .
Altra cosa , la pivot di cui parlo è molto pesante , per cui ogni volta che si elimina un campo , il PC ci mette qualche secondo per calcolare di nuovo la pivot , quindi se devo deselezionare più campi, devo mettere un flag sulla casella rinvia aggiornamento (nella schemata elenco campi ) e poi fare click su aggiornamento una volta che ho eliminato i campi che non mi interessa vedere
spero di aver spiegato la cosa con chiarezza
ancora una volta grazie in anticipo
Wikipino
Utente Junior
 
Post: 19
Iscritto il: 10/11/14 15:24

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Anthony47 » 19/11/14 13:10

Solo le piccole migliorie che Microsoft ha pensato per semplificarci la vita…

Dici che non hai l’ accesso “al database”, quindi credo che eliminato un campo saresti poi impossibilitato a ricrearlo; avrei pertanto optato per nascondere le colonne che contengono i campi non di tuo interesse.
Questa macro lavora sulla pivottable 1:
Codice: Seleziona tutto
Sub ItemSelect()
Dim PvI As PivotItem
'
With ActiveSheet.PivotTables(1)
    .ManualUpdate = True
    For Each PvI In .PivotFields("Valori").PivotItems
     pviHead = PvI.Name
     If Application.WorksheetFunction.CountIf(Range("A20:A100"), pviHead) = 0 Then
         Range(PvI.LabelRange.Address).EntireColumn.Hidden = True
'         PvI.Visible = False
     Else
         Range(PvI.LabelRange.Address).EntireColumn.Hidden = False
'         PvI.Visible = True
     End If
    Next PvI
    .ManualUpdate = False
    .Update
End With
End Sub

Scrivi l’ intestazione di campi che ti interessa mantenere da A20 verso il basso (fino ad A100 max), poi lanci la macro.
Le colonne dei campi non elencati saranno nascoste (possono essere riaperte con comandi Excel).

Lo puoi adattare per tabelle diverse, se sono disposte affiancate.

Se i dati di origine fossero accessibili, e quindi la tabella fosse ricostruibile (o se i campi eliminati non ti interessa poterli ricreare), si potrebbero usare le istruzioni commentate (al posto di quelle che nascondono le colonne); in questo modo si potrebbe lavorare anche su tabelle pivot accodate.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19183
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Wikipino » 19/11/14 18:02

grazie Anthony
era esattamente quello che volevo
uso le righe commentate perchè voglio eliminare i campi, non nascondere le colonne

maaaaa....

purtroppo sul file di Esempio funziona perfettamente ma sulla pivot vera no :cry:
mi si blocca a questa riga
For Each PvI In .PivotFields("Valori").PivotItems
e mi dà l'errore

Errore di run-time ‘1004’:
Impossibile trovare la proprietà PivotFields per la classe PivotTable


ho pensato che la causa fosse che la pivot non si chiama "Tabella_pivot1" ma ho provato a cambiare il nome in "Tabella_pivot1"
e non funziona comunque
se il motivo è questo, si può mettere nella macro un comando che agisca su qualsiasi tabella pivot nel foglio attivo? (visto che c'è solo quella )

altra cosa che non avevo menzionato perchè non mi sembrava rilevante, ma mi viene il dubbio che lo sia
la pivot ovviamente è in excel ma è costruita con un database in Access. spero che questo non sia un problema

sai da cosa posssa dipendere l'errore
grazie mille
Wikipino
Utente Junior
 
Post: 19
Iscritto il: 10/11/14 15:24

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi peppo55 » 19/11/14 21:06

Ciao Wikipino,

non so se è quello che intendi. Prova nella scheda Strumenti tabella pivot > Opzioni > Azioni > Cancella > Cancella tutto.

Un saluto ad Anthony47
peppo

Excel 2010
peppo55
Utente Senior
 
Post: 167
Iscritto il: 30/09/12 13:51

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Anthony47 » 20/11/14 03:11

Non so se il suggerimento dell' amico Peppo (vedi messaggio prima di questo) sia sufficiente, provalo.
Continuando il ragionamento della macro:
-essa lavora sulla “prima” tabella pivot della pagina; se “c’e’ solo quella” allora e’ a posto cosi’
-il mio sospetto e’ che la tua pivot reale non abbia un campo dati chiamato “Valori” (nella tabella demo e’ in riga 8); puoi confermare o smentire?

Ciao a tutti.
Avatar utente
Anthony47
Moderatore
 
Post: 19183
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Wikipino » 20/11/14 10:26

GRANDISSIMO ANTHONY
in effetti non mi ero accorto che i "Valori" nella pivot si chiamavano "Dati" :D
non avevo visto che la tua macro fa riferimento al nome del campo valori
è bastato cambiare nella macro la parola "Valori" in"Dati"

ora funziona alla perfezione e mi hai facilitato tantissimo il lavoro !!!!!!!!
GRAZIE ANCORA !!!!!!



scusa Peppo
volevo provare anche il tuo suggerimento ma non trovo la scheda strumenti tabella pivot
c'è solo Opzioni tabella pivot e nelle opzioni non trovo "Azioni"

grazie
Wikipino
Utente Junior
 
Post: 19
Iscritto il: 10/11/14 15:24

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi peppo55 » 20/11/14 10:51

Ciao Wikipino,

se non selezioni una cella della tabella pivot, la scheda aggiuntiva non è visibile.
peppo

Excel 2010
peppo55
Utente Senior
 
Post: 167
Iscritto il: 30/09/12 13:51

Re: [EXCEL] Togliere tutti i campi da una tabella pivot

Postdi Wikipino » 20/11/14 11:04

ok ,
sì sapevo che per azionare le schede "opzioni" e "progettazioni" bisognasse attivare la pivot ma non avevo letto SOPRA opzioni e progettazione dove c'è scrittto "strumenti tabella pivot" 8)

ora ho capito il suggerimento ma non mi aiuta
mi cancella non solo i campi valore ( che andrebbe anche bene visto che voglio tenere pochi campi e quindi potrei reinserirli) ma anche tutti i campi nel filtro rapporto e quelli vorrei tenerli tutti
grazie comunque per il suggerimento
ho risolto con la macro di Anthony

grazie ancora a tutti
Wikipino
Utente Junior
 
Post: 19
Iscritto il: 10/11/14 15:24


Torna a Applicazioni Office Windows


Topic correlati a "[EXCEL] Togliere tutti i campi da una tabella pivot":


Chi c’è in linea

Visitano il forum: Nessuno e 52 ospiti