Ejemplo muy simple que hice hace unos meses de como pasar el contenido de un ListView a un archivo .Xls
Agregar:
1 ListView
1Progressbar
1commandButton
Código:'CREAR EL OBJETO (INSTANCIAR) 'CON EL OBJETO APLICACION (OBJEXCEL) Private Sub Command1_Click() Dim objExcel As Object Dim objLibro As Object Set objExcel = CreateObject("Excel.Application") Set xLibro = objExcel.Workbooks.Add(App.Path & "\libro1.xls") Dim Col As Integer, Fila As Integer Dim elementos As ListItem With objExcel 'CREAR EL LIBRO DE TRABAJO PARA ESO NOS VALEMOS 'DEL METODO ADD DE LA COLECCION WORKBOOKS 'LA MISMA QUE ESTA DENTRO DEL OBJETO APLICACION Set xLibro = .Workbooks.Add(App.Path & "\libro1.xls") End With For i = 1 To 10 Set elementos = ListView1.ListItems.Add(, , i) elementos.SubItems(1) = "Subitem: " & i elementos.SubItems(2) = "Subitem: " & i Next With xLibro 'Asignamos El valor Maximo del Progress teniendo como dato _ la cantidad de items en el ListView ProgressBar1.Max = ListView1.ListItems.Count 'DEL LIBRO SU HOJA CON INDICE 1 With .Sheets(1) 'Recorremos la cantidad de items del ListView For Fila = 1 To ListView1.ListItems.Count Col = 1 'Asignamos EL Item actual en la celda .Cells(Fila, Col) = ListView1.ListItems.Item(Fila) 'Asignamos EL SubitemItem actual en la celda For Col = 1 To ListView1.ColumnHeaders.Count - 1 .Cells(Fila, Col + 1) = ListView1.ListItems(Fila).SubItems(Col) Next 'aumentamos en 1 la propiedad value ProgressBar1.Value = ProgressBar1.Value + 1 Next End With End With '.Cells(Fila, Col) = ListView1.ListItems.Item(Fila) 'DESTRUIR LAS VARIABLES DE LIBRO DE TRABAJO 'Y LA DE TIPO APLICACION :D objExcel.Visible = True Set xLibro = Nothing Set objExcel = Nothing End Sub