Jump to content
Posted

Buenas tardes a todos, trato de aplicar dos filtros discriminatorios de datos procedentes de dos hojas distintas de un libro de excell, de tal forma que al seleccionar el primer filtro solo aparezca en el segundo filtro los campos que contenga el primero.

Adjunto un ejemplo y lo explico mejor.

Gracias.

Ejemplo 2.xlsb

Solved by Israel Cassales

Go to solution

Featured Replies

  • Solution

Hola,

Este código hace literalmente eso

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Me.Range("B2")) Is Nothing Then

Application.EnableEvents = False

Me.Range("B3").ClearContents

With Me.Range("B3").Validation

.Delete

Select Case Me.Range("B2").Value

Case 1

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _

Operator:=xlBetween, Formula1:="Avion,Barco"

Case 3

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _

Operator:=xlBetween, Formula1:="Barco"

Case Else

End Select

End With

Application.EnableEvents = True

End If

End Sub

Edited by Israel Cassales

También es posible hacer eso con fórmulas directo sobre la validación de datos, creando los nombres de las tablas y usando la función INDIRECTO()

Si le interesa cree un tema similar en esa sección.

Le dejo el libro con el VBA

Ejemplo 2.xlsb

  • Author

Muchas gracias por su ayuda.

Create an account or sign in to comment