Formulario como listo ? Quien me ayu

Necesito filtrar en mi formulario en macro, en la tercera frame filtrarlo por fecha desde y hasta y que me muestre en el listbox lo seleccionado, lo otro que no se repitan las fechas y los espacios en blanco.

1 respuesta

Respuesta
1

Te anexo el código para lo siguiente:

- Llenar los combos

- Filtrar por rango de fechas en el listbox

Private Sub CommandButton1_Click()
'Por.Dante Amor
    ListBox1.Clear
    If ComboBox1.Value = "" Then
        MsgBox "Captura una fecha desde"
        Exit Sub
    End If
    fec1 = CDate(ComboBox1.Value)
    If ComboBox2 = "" Then
        fec2 = fec1
    Else
        fec2 = CDate(ComboBox2.Value)
    End If
    '
    For i = 3 To Range("E" & Rows.Count).End(xlUp).Row
        If Cells(i, "E").Value >= fec1 And Cells(i, "E") <= fec2 Then
            ListBox1.AddItem Cells(i, "A")
            ListBox1. List(ListBox1.ListCount - 1, 1) = Cells(i, "B")
            ListBox1. List(ListBox1.ListCount - 1, 2) = Cells(i, "C")
            ListBox1. List(ListBox1.ListCount - 1, 3) = Cells(i, "D")
            ListBox1. List(ListBox1.ListCount - 1, 4) = Cells(i, "E")
            ListBox1. List(ListBox1.ListCount - 1, 5) = Format(Cells(i, "F"), "hh:mm")
            ListBox1. List(ListBox1.ListCount - 1, 6) = Format(Cells(i, "G"), "hh:mm")
            ListBox1. List(ListBox1.ListCount - 1, 7) = Cells(i, "H")
        End If
    Next
End Sub
'
Private Sub UserForm_Activate()
    For i = 3 To Range("E" & Rows.Count).End(xlUp).Row
        Call Agregar(ComboBox1, Cells(i, "E").Value)
        Call Agregar(ComboBox2, Cells(i, "E").Value)
    Next
End Sub
'
Sub Agregar(combo As ComboBox, dato As String)
'por.DAM agrega los item únicos y en orden alfabético
    For i = 0 To combo.ListCount - 1
        Select Case StrComp(combo.List(i), dato, vbTextCompare)
            Case 0: Exit Sub 'ya existe en el combo y ya no lo agrega
            Case 1: combo.AddItem dato, i: Exit Sub 'Es menor, lo agrega antes del comparado
        End Select
    Next
    combo.AddItem dato 'Es mayor lo agrega al final
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Añade tu respuesta

Haz clic para o