In questo articolo imparerai come filtrare i dati in base alla selezione della cella.

Devi seguire i seguenti passaggi:

Fare clic sulla scheda Sviluppatore Dal gruppo Codice, selezionare Visual Basic

img1

Immettere il codice seguente nel foglio di lavoro corrente (foglio1 nel nostro esempio)

Foglio di lavoro secondario privato_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)

Dim xcolumn As Integer

Dim xvalue As String

xcolumn = ActiveCell.Column

xvalue = ActiveCell.Value

Se Application.Intersect (ActiveCell, [headers]) non è niente allora

Se ActiveCell.Value <> “” Allora

ActiveSheet.Range (“A: d”). AutoFilter Field: = xcolumn, Criteria1: = xvalue

Annulla = Vero

End If

End If

End Sub

===

===

Foglio di lavoro secondario privato_SelectionChange (ByVal Target As Range)

Dim rownumber As Integer

rownumber = ActiveCell.Row

Se Application.Intersect (ActiveCell, [headers]) non è niente allora

Se ActiveCell.Value <> “” Allora

Intervallo (“A1: D13”). Interior.ColorIndex = xlNone

Range (“A” & rownumber & “: D” & rownumber) .Interior.ColorIndex = 6

End If

End If

End Sub

img2

Nota: le intestazioni nel codice sopra rappresentano l’intervallo denominato per l’intervallo A1: D1 Puoi semplicemente selezionare l’intervallo A1: D1 e digitare le intestazioni nella casella Nome oppure puoi utilizzare Nome definito nella scheda Formule

img3

L’evento BeforeDoubleClick * verrà attivato ogni volta che l’utente fa doppio clic su una cella e cambierà il filtro nella ricerca.

  • Se vogliamo filtrare i dati per Prodotto C, possiamo facilmente fare doppio clic sulla cella D4 per filtrare la ricerca.

img4

Nel caso in cui desideriamo filtrare la ricerca per colonna C e Prodotto KFCWW, faremo doppio clic sulla cella C4 per restringere i dati.

img5

L’evento SelectionChange * verrà attivato ogni volta che l’utente seleziona una cella e cambierà il colore da bianco a giallo. Se la cella attiva è vuota, il codice non verrà eseguito.

  • Se facciamo clic sulla cella B3, la riga verrà evidenziata in giallo. Fare riferimento all’istantanea sottostante

img6

Qui puoi vedere la barra della formula che mostra la cella selezionata, ad es.Cella B3.In questo modo, puoi evidenziare le righe con un solo clic e filtrare i dati in base alla selezione della cella utilizzando il codice VBA.