Public Sub ReemplazarCaracteresExcel() Application.ScreenUpdating = False Set wb = Workbooks.Open(Filename:=Application.GetOpenFilename) Ruta = ActiveWorkbook.FullName RutaSinExtension = Left(Ruta, InStrRev(Ruta, ".") - 1) wb.Close False Set fso = CreateObject("Scripting.FileSystemObject") If fso.FileExists(Ruta) Then Set objStream = fso.OpenTextFile(Ruta, 1, False, 0) End If Set ObjCopy = fso.CreateTextFile(RutaSinExtension & "_final." & Right(Ruta, 3)) For x = 1 To 5 'Salta el nº de líneas indicadas: 5 objStream.readline Next x Do While Not objStream.AtEndOfStream strOldLine = objStream.readline i = 1 newarray = Split(strOldLine, ",") 'Carácter reemplazado: , strNewLine = newarray(0) Do Until i = UBound(newarray) + 1 strNewLine = strNewLine & ";" & newarray(i) 'Carácter nuevo: ; i = i + 1 Loop ObjCopy.WriteLine strNewLine Loop Application.ScreenUpdating = True MsgBox "Fichero creado: " & RutaSinExtension & "_final." & Right(Ruta, 3) End SubBorramos estas 3 líneas en el caso de que en el fichero de texto no haya que saltarse líneas en blanco y que provocarían un error:
For x = 1 To 5 'Se salta el nº de líneas indicadas objStream.readline Next x
Entradas relacionadas:
No hay comentarios:
Publicar un comentario