Cómo filtrar los datos en función de la selección de la célula Uso de VBA en Microsoft Excel
En este artículo, aprenderá a filtrar los datos según la selección de celda.
Debes seguir los pasos a continuación:
Haga clic en la pestaña Desarrollador Desde el grupo Código, seleccione Visual Basic
Ingrese el siguiente código en la hoja de trabajo actual (sheet1 en nuestro ejemplo)
Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)
Dim xcolumn como entero
Dim xvalue como cadena
xcolumn = ActiveCell.Column
xvalue = ActiveCell.Value
Si Application.Intersect (ActiveCell, [encabezados]) no es nada, entonces
Si ActiveCell.Value <> «» Entonces
ActiveSheet.Range («A: d»). Campo de autofiltro: = xcolumn, Criteria1: = xvalue
Cancelar = Verdadero
Finalizar si
Finalizar si
End Sub
===
===
Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Dim rownumber As Integer
rownumber = ActiveCell.Row
Si Application.Intersect (ActiveCell, [encabezados]) no es nada, entonces
Si ActiveCell.Value <> «» Entonces
Rango («A1: D13»). Interior.ColorIndex = xlNone
Rango («A» & rownumber & «: D» & rownumber) .Interior.ColorIndex = 6
Finalizar si
Finalizar si
End Sub
Nota: Los encabezados en el código anterior representan el rango con nombre para el rango A1: D1 Simplemente puede seleccionar el rango A1: D1 y escribir encabezados en el cuadro Nombre o puede usar el Nombre definido en la pestaña Fórmulas
El evento BeforeDoubleClick * se activará cada vez que el usuario haga doble clic en cualquier celda y cambiará el filtro en la búsqueda.
-
Si queremos filtrar los datos por Producto C, podemos fácilmente hacer doble clic en la celda D4 para filtrar la búsqueda.
En caso de que queramos filtrar la búsqueda por columna C y Producto KFCWW, haremos doble clic en la celda C4 para reducir los datos.
El evento SelectionChange * se activará cada vez que el usuario seleccione cualquier celda y cambiará el color de blanco a amarillo. Si la celda activa está vacía, el código no se ejecutará.
-
Si hacemos clic en la celda B3, la fila se resaltará en color amarillo. Consulte la siguiente instantánea
Aquí, puede ver que la barra de fórmulas muestra la celda seleccionada, es decir, la celda B3.De esta manera, puede resaltar las filas con un solo clic y filtrar los datos según la selección de celda usando el código VBA.