Filtro avanzado con intervalo de fechas
-Hacer un filtro con un intervalo de fechas.
Tengo lo siguiente:
-Hoja1 "Datos" y Hoja2 "Auxiliar"
-UserForm1 y Userform2
En el Userform2 tengo cinco textBox.
Codigo:
Option Explicit Private Sub UserForm_Initialize() Dim Q& TextBox1.ControlSource = Range("Aux_2").Cells(6).Address(external:=True) TextBox2.ControlSource = Range("Aux_2").Cells(7).Address(external:=True) TextBox3.ControlSource = Range("Aux_2").Cells(8).Address(external:=True) TextBox4.ControlSource = Range("Aux_2").Cells(9).Address(external:=True) TextBox5.ControlSource = Range("Aux_2").Cells(10).Address(external:=True) With Range("Aux_3") .CurrentRegion.Offset(1).Delete xlShiftUp ListBox1.RowSource = .Offset(1).Address(external:=True) End With End Sub Private Sub frm_Find_Click() Dim Q& ListBox1.ListIndex = -1 '----------------------\ 'Rng es el rango de datos y fue definido en el UserForm1 UserForm1.Rng.AdvancedFilter 2, Range("Aux_2"), Range("Aux_3") '----------------------/ With Range("Aux_3").CurrentRegion Q = .Rows.Count - 1: If Q = 0 Then Q = 1 ListBox1.RowSource = .Offset(1).Resize(Q).Address(external:=True) End With End Sub Private Sub ListBox1_Click() Dim i& With ListBox1 i = .ListIndex: If i = -1 Then Exit Sub If .List(i) = Empty Then Exit Sub '--------------\ 'Cuando seleccionamos una fila del ListBox, la l?nea de c?digo que sigue traslada 'el contenido de las celdas correspondientes del rango de filtrado al rango CS. UserForm1.CS.FormulaLocal = Range(ListBox1.RowSource).Rows(1 + i).FormulaLocal 'Y como las celdas del rango CS est?n vinculadas a los 4 textBoxs del UserForm1, 'estos textBoxs se cargan con la info autom?ticamente. '--------------/ End With End Sub