Visualizzazione dei criteri di filtro su una stampa (Microsoft Excel)
Microsoft Excel include alcuni ottimi strumenti che consentono di filtrare tabelle di dati di grandi dimensioni per includere solo le informazioni che si desidera visualizzare. In effetti, i filtri ti consentono di “suddividere in sezioni” i tuoi dati finché non ottieni esattamente ciò che desideri.
Quando si stampano dati filtrati, si potrebbe voler sapere che cosa è stato fatto per affettare e sminuzzare i dati originali. Esistono diversi modi per visualizzare i criteri di filtro. Un modo semplice consiste nell’utilizzare le funzionalità di filtro avanzate di Excel, che richiedono l’impostazione di una piccola tabella dei criteri per i dati. Se la tabella dei criteri fa parte di ciò che si stampa, è possibile visualizzare i criteri di filtro abbastanza facilmente.
Se utilizzi il filtro automatico, devi utilizzare un approccio diverso. Uno di questi approcci è descritto in dettaglio nel sito di John Walkenbach:
http://j-walk.com/ss/excel/usertips/tip044.htm
Questa soluzione utilizza una funzione definita dall’utente per restituire qualsiasi criterio di filtro in uso nella colonna corrente. La funzione può essere utilizzata in una cella di quella colonna per visualizzare i criteri. Se utilizzi il filtro avanzato, l’approccio macro è un po ‘più complesso. Le seguenti macro (ce ne sono due nell’elenco) esaminano i criteri avanzati in gioco, quindi inseriscono i criteri nella parte sinistra dell’intestazione.
Sub AddFilterCriteria() Dim strCriteria As String strCriteria = FilterCriteria() If strCriteria = "" Then strCriteria = "No Filtering Criteria" Else strCriteria = "Filter Criteria:" & Chr(10) & strCriteria End If ' add Criteria string to Header/Footer With ActiveSheet.PageSetup .LeftHeader = strCriteria End With End Sub Function FilterCriteria() As String Dim rngCriteria As Range, col As Range, cel As Range Dim strCriteria As String, r As Integer, c As Integer Const strCriteriaRange As String = "Criteria" FilterCriteria = "" On Error Resume Next 'Set Criteria-Range reference Set rngCriteria = Range(strCriteriaRange) If Err <> 0 Then Exit Function On Error GoTo 0 ' Create Criteria String c = 0 For Each col In rngCriteria.Columns c = c + 1 ' CriteriaRange Columns r = 1 ' CriteriaRange Rows For Each cel In col.Cells If r = 1 Then strCriteria = strCriteria & "Criteria" _ & c & " (" & cel.Value & ") = " Else strCriteria = strCriteria & "'" & cel.Value & "'" If IsEmpty(cel.Offset(1, 0)) Then 'Add New row Char if not Last Criteria Column If c < rngCriteria.Columns.Count Then strCriteria = strCriteria & Chr(10) End If Exit For End If strCriteria = strCriteria & " " End If r = r + 1 Next cel ' next criteria row Next col ' next criteria column FilterCriteria = strCriteria End Function
Per utilizzare la macro, è sufficiente eseguire la macro AddFilterCriteria, dopo aver impostato il filtro avanzato. La macro legge la tabella dei criteri e riunisce i criteri in una stringa che viene inserita nell’intestazione di sinistra.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (11649) si applica a Microsoft Excel 2007, 2010, 2013 e 2016.
Puoi trovare una versione di questo suggerimento per la vecchia interfaccia del menu di Excel qui: