Come aggiornare automaticamente i dati filtrati in Excel quando vengono aggiornati

Microsoft Excel ti consente di filtrare i dati. È una funzione utile che può aiutarti a dare un senso a grandi quantità di dati. Se ti manca il know-how tecnico necessario per creare un database, questa funzione è un salvavita. I filtri sono abbastanza semplici e consentono di includere o escludere dati da una colonna. Il filtro si estende e si applica anche ai valori dei dati nelle righe corrispondenti. Ciò che il filtro non fa è l’aggiornamento automatico. Se un valore in una colonna filtrata cambia, perché è stato aggiornato manualmente o perché è in uso una formula, è necessario applicare nuovamente i filtri. Un semplice snippet di codice consente di aggiornare al volo le colonne filtrate.

Dovrai abilitare le macro e salvare il tuo file Excel come file abilitato per le macro, .XLSM, per poter utilizzare il codice. Per salvare il file come file abilitato per macro, vai su File> Salva con nome e seleziona Cartella di lavoro abilitata per macro di Excel dalla finestra di dialogo “Salva con nome”.

Quindi, seleziona il foglio a cui hai applicato i filtri. Fare clic con il pulsante destro del mouse e selezionare “Visualizza codice” dal menu contestuale.

Si aprirà una finestra di Microsoft Visual Basic con il foglio Excel corrente. Incolla il codice seguente nella finestra del codice.

Private Sub Worksheet_Change(ByVal Target As Range)
If Me.FilterMode = True Then
With Application
.EnableEvents = False
.ScreenUpdating = False
End With

With ActiveWorkbook
.CustomViews.Add ViewName:="Mine", RowColSettings:=True
Me.AutoFilterMode = False
.CustomViews("Mine").Show
.CustomViews("Mine").Delete
End With
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
End If

End Sub

Salva il file. Se non hai salvato il file come cartella di lavoro abilitata per macro di Excel, ti verrà chiesto di farlo di nuovo. Questo file salvato verrà salvato in copia e non sovrascriverà il file corrente.

Una volta aggiunto il codice, puoi aggiornare qualsiasi cella in una colonna filtrata e aggiornerà automaticamente i dati filtrati secondo le condizioni che hai impostato. Questo codice è stato scritto da Sorin, utente di Stack Exchange.