Necesito pasar un fichero de texto separados con comas a Excel con visual Basic. No una macro de excel, eso ya lo se hacer. Pero necesito saber donde puedo encontrar código fuente con un ejemplo de como realizar esto.
Respuesta de pcampora
1
1
pcampora, DATOS PERSONALES: Nacionalidad: Argentina
Cesarvel, Agregale al proyecto una referencia a Microsoft Excel 8.0 Object Library (o la version que tengas instalada en la maquina de desarrollo y en los clientes). Por ultimo, usa el siguiente código: Dim xlApp As Excel.Application Dim myArray(0 To 150) Dim j As Integer 'Asignar referencias de objeto a las variables Set xlApp = CreateObject("Excel.Application") ----- Esta es una forma ----------------------- For j = 0 To 150 myArray(j) = Array(j + 1, 1) Next For j = 0 To 150 myArray(j) = Array(j + 1, 2) Next 'Abrimos el archivo xlApp.Workbooks.OpenText _ FileName:="C:\ejemplo.txt", _ Origin:=xlWindows, _ StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _ ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=True, Comma:=False, _ Space:=False, Other:=False, FieldInfo:=myArray ----- Esta es otra forma ----------------------- 'Abrimos el archivo xlApp.Workbooks.Open _ FileName:="C:\ejemplo.txt", _ Format:=xlCSV, _ Delimiter:=";", _ ReadOnly:=True ------------------------------------------------ 'Guardamos el archivo xlApp.Workbooks(1).SaveAs "C:\ejemplo.xls", xlExcel7 'Cerrar la hoja de cálculo xlApp.ActiveWorkbook.Close False 'Cerrar Excel xlApp.Quit 'Liberamos memoria Set xlApp = Nothing Fíjate que forma te genera el excel mejor. Cualquier cosa, no dudes en avisarme. Saludos. Pablo. PD: No te olvides de ponerle puntaje a la respuesta.
Ponele puntaje a la respuesta, así puedo seguir contestando otras.