Pasar datos de un listbox a una nueva hoja excel

Los expertos.

Tengo un listbox con varias columnas que se llena a través de un filtro hecho en un combobox, que me trae los encabezados de las columnas y un textbox de búsqueda donde pongo el dato a filtrar (gracias Dante Amor por el código de filtrar por fechas), ahora bien quisiera que, al pasar los datos de ese listbox, en lugar de ir a una hoja del mismo libro, me cree otra hoja (o libro) aparte y que lo renombre con el dato de búsqueda insertado en el textbox.

1 respuesta

Respuesta
1

Te anexo la macro

Private Sub CommandButton9_Click()
'Por.Dante Amor
    filas = ListBox1.ListCount
    If filas = 0 Then
        MsgBox "No hay registros a pasar"
        Exit Sub
    End If
    If txtFiltro1 = "" Then
        MsgBox "No hay registros a pasar"
        Exit Sub
    End If
    If cmbEncabezado = "" Or cmbEncabezado.ListIndex = -1 Then
        MsgBox "No hay seleccionado un encabezado"
        Exit Sub
    End If
    nombre = txtFiltro1
    If cmbEncabezado.ListIndex = 1 Then
        If IsDate(txtFiltro1) Then
            nombre = Format(txtFiltro1, "dd-mm-yyyy")
        End If
    End If
    '
    Application.ScreenUpdating = False
    Set l1 = ThisWorkbook
    Set h1 = Sheets("Hoja1")
    Set l2 = Workbooks.Add
    Set h21 = l2.Sheets(1)
    h1.Rows(1).Copy h21.Rows(1)
    cols = ListBox1.ColumnCount
    h21.Range("A2", Cells(filas + 1, cols)) = ListBox1.List
    ruta = l1.Path & "\"
    l2.SaveAs Filename:=ruta & nombre & ".xlsx", _
        FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    l2.Close
    Application.ScreenUpdating = True
    MsgBox "Datos traspasados al libro: " & nombre
End Sub

.

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

.

Avísame cualquier duda

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas