Visual Basic - Convertir txt a excel

Life is soft - evento anual de software empresarial
 
Vista:

Convertir txt a excel

Publicado por Gary (4 intervenciones) el 05/05/2007 21:22:01
Buenos dias,

tengo un problema, quiero convertir un archivo txt a un archivo excel. Pero que conserve los formatos y los estilos.

o que otra opcion tengo para obtener el archivo excel.

Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Convertir txt a excel

Publicado por JuanFRy (14 intervenciones) el 07/05/2007 07:48:29
Saludos,
La opción más asequible que yo veo es:
Pues lo que deberías hacer es guardar el archivo en un string, mediante la lectura del fichero Txt.
Carga en un Flexgrid el contenido de la Cadena, interpretando vbTab para insertar nueva columna y vbNewLine para insertar nueva Fila.
Luego utiliza este sub:
'Objeto de Hoja de Excel
Dim ApExcel As Variant, iPosCol() As Integer

Public Sub ExportarExcel(Grid As MSFlexGrid, BARRA As ProgressBar, sTitFic As String, Optional sTitHoja As String)
Dim I As Integer, J As Integer, sRango As String
Dim sCol As String, iUltPos As Integer, sAux As String
Dim NoColRej As Integer 'Capturar el Nº de columnas visibles
Dim sHojCal As String
Dim iFch As Long
Const iNReg As Integer = 200
'Const iFilaIni As Integer = 6
Dim iFila As Integer 'Nº de filas agregadas
Dim iNPaste As Integer 'Nº de veces que hemos pegado
'On Error Resume Next
'SETEAMOS EL EXCEL
Set ApExcel = CreateObject("Excel.application")
' Hace que Excel no se vea
ApExcel.Visible = False
'determina el numero de hojas que se mostrara en el Excel
ApExcel.SheetsInNewWorkbook = 1
'Agrega un nuevo Libro
ApExcel.Workbooks.Add
iNPaste = 0

With ApExcel '.Cells(Fila,Columna)
'Cambiar el nombre de la ficha
.Sheets("Hoja1").Select
.Sheets("Hoja1").Name = sTitFic

'Iniciar barra de progreso para visualizar progreso
BARRA.Min = 0
BARRA.Max = Grid.Rows - 1
BARRA.Value = 0
BARRA.Visible = True
Grid.Visible = False
ExcelCancel = False
Screen.MousePointer = 11
'Exportar los datos
sHojCal = ""
iFila = 1
If sTitHoja <> "" Then
sHojCal = sHojCal & sTitHoja & vbNewLine
End If
For I = 1 To Len(sTitHoja)
If Mid(sTitHoja, I, 2) = vbNewLine Then
iFila = iFila + 1
End If
Next
For J = 0 To Grid.Rows - 1
If Grid.RowHeight(J) > 0 Then
DoEvents
For I = 1 To Grid.Cols - 1 'Establece las columnas
If Grid.ColWidth(I) > 0 Then
If Mid(Grid.TextMatrix(J, I), 3, 1) = "/" And Mid(Grid.TextMatrix(J, I), 6, 1) = "/" Then
iFch = DateSerial(Year(Grid.TextMatrix(J, I)), Month(Grid.TextMatrix(J, I)), Day(Grid.TextMatrix(J, I)))
sHojCal = sHojCal & Format(iFch, "mm/dd/yy") & vbTab
ElseIf InStr(1, Grid.TextMatrix(J, I), vbNewLine, vbTextCompare) <> 0 Then
sHojCal = sHojCal & Replace(Grid.TextMatrix(J, I), vbNewLine, " ") & vbTab
Else
'Grabar en formato plano (remplaza el simbolo de coma por punto para que lo reconozca el excel como valor númerico)
sHojCal = sHojCal & Replace(Grid.TextMatrix(J, I), ",", ".") & vbTab
End If
End If
Next I
If ExcelCancel Then
BARRA.Value = BARRA.Max
Else
If BARRA.Value < BARRA.Max Then
BARRA.Value = BARRA.Value + 1
End If
End If
'frmVtaGam.Caption = Format(BARRA.Value / BARRA.Max, "0%")
iFila = iFila + 1
sHojCal = sHojCal & vbNewLine
If iFila Mod iNReg = 0 Then
'Pegar desde el portapapeles
Clipboard.Clear
Clipboard.SetText sHojCal
.Range("A" & (iFila - iNReg) + 1).Select
.ActiveSheet.Paste
Clipboard.Clear
sHojCal = ""
iNPaste = iNPaste + 1
End If
End If
Next J
'Volcamos el resto, que no ha llegado a iNReg
'Pegar desde el portapapeles
Clipboard.Clear
Clipboard.SetText sHojCal
.Range("A" & (iNPaste * iNReg) + 1).Select
.ActiveSheet.Paste
Clipboard.Clear
sHojCal = ""

'Hace que Excel se vea
ApExcel.Visible = True

Set ApExcel = Nothing
End With
Screen.MousePointer = 0
Set ApExcel = Nothing
Grid.Visible = True
BARRA.Visible = False

End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Convertir txt a excel

Publicado por ivan (1039 intervenciones) el 11/05/2007 23:07:45
¿y todo eso para convertir un txt a Excel? como todos tus programas sean asi, lo seguro es que te quedas sin recursos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Convertir txt a excel

Publicado por Raul Abel (1 intervención) el 12/12/2007 23:43:08
Hola, quiero saber como convertir un Txt a un archivo en Exel, como hacer mediante el bisual basic marcarle las columnas de cada campo porque son muchos datos que tengo que importar.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar