Pasar datos de un formulario a otro libro de excel
Necesito ayuda para refinar una parte de mi código que no consigo lo mande a las celdas deseadas.
La parte donde tengo el problema es en los listbox.
Gracias
Private Sub Imprimirparte() Dim objExcel As Application Dim RutaArchivo As String Dim Texto As String Dim Fila As Integer Set objExcel = CreateObject("Excel.Application") With objExcel RutaArchivo = ThisWorkbook.Path & "\parte_tmp.xlsx" If IsFileOpen(RutaArchivo) Then MsgBox "El libro debe estar cerrado para proceder." Exit Sub Else ' With .Workbooks.Open(RutaArchivo) .Worksheets("Hoja1").Range("parte").ClearContents Fila = 18 Do While .Worksheets("Hoja1").Cells(18, 1) <> "" Fila = Fila + 1 Loop final = Fila .Worksheets("Hoja1").Range("D2").Value = Me.cbo_not .Worksheets("Hoja1").Range("C3").Value = Me.txt_descrip .Worksheets("Hoja1").Range("G2").Value = Me.txt_fecha .Worksheets("Hoja1").Range("B8").Value = Me.eje1 .Worksheets("Hoja1").Range("B10").Value = Me.eje2 .Worksheets("Hoja1").Range("B12").Value = Me.eje3 For i = 0 To Me.ListBox1.ListCount - 1 .Worksheets("Hoja1").Cells(final, 1) = Me.ListBox1.List(i, 0) ' se tiene que grabar en la celda A18 .Worksheets("Hoja1").Cells(final, 2) = Me.ListBox1.List(i, 1) ' se tiene que grabar en la celda D18 .Worksheets("Hoja1").Cells(final, 3) = Me.ListBox1.List(i, 2) ' se tiene que grabar en la celda F18 final = final + 1 Next For J = 0 To Me.ListBox2.ListCount - 1 .Worksheets("Hoja1").Cells(final, 1) = Me.ListBox2.List(i, 0) ' se tiene que grabar en la celda N42 .Worksheets("Hoja1").Cells(final, 2) = Me.ListBox2.List(i, 1) ' se tiene que grabar en la celda P42 final = final + 1 Next 'Establecer área de impresión y enviar al impresor. .Worksheets("Hoja1").PageSetup.PrintArea = "parte" .Worksheets("Hoja1").PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False .Close SaveChanges:=True End With End If .Quit End With End Sub
1 Respuesta
Respuesta de Dante Amor
2