Abrir un archivo txt y eliminar saltos de línea y de párrafo desde script .vbs sin usar controles que requieran licencia.
En primer lugar saludos y gracias anticipadas.
Uso un script en un fichero .vbs que elimina los saltos de línea y de párrafos existentes en un fichero txt que tiene cientos y cientos de registros. El script (nombrescript.vbs) lo ejecuto desde un botón de comando en un formulario access.
**Ejemplo txt: ARCHIVO_PARA_ARREGLAR.TXT
999998|Andres Perez Pisuerga|Este es el campo de varias líneas
Línea en blanco
Esta es la segunda línea del puñetero campo tras una línea en blanco
Esta la tercera
Esta la cuarta[aquí el cuadradito de separador de registro]999999|Pepita Calvo Bueno|Este es el campo conflictivo en varias líneas
Línea en blanco
Otra línea del campo del segundo registro
Tercera línea del campo en el segundo registro[cuadradito de fin de registro]
**Fin ejemplo txt
En el script se usa el control
set oComDlg=CreateObject("MSComDlg.CommonDialog")
Y si lo ejecuto en las estaciones de trabajo clientes de la intranet me aparece el mensaje: "No se puede crear el control porque
no tiene una licencia valida". Si lo ejecuto en la mía que SI tiene instalado y
licenciado VB6 funciona perfectamente.
''CODIGO DEL SCRIPT..... Nombrescript.vbs
Set WshShell = WScript.CreateObject("Wscript.Shell")
set fso = createobject("scripting.filesystemobject")
Set oComDlg = CreateObject("MSComDlg.CommonDialog")
With oComDlg
.DialogTitle = "Select text file"
.MaxFileSize = 10000
.Filter = "TXT|*.TXT|"
.FileName ="ARCHIVO_PARA_ARREGLAR.TXT"
.InitDir = "P:\XXX\APLICACION_XXX\"
.ShowOpen
sFile = Replace(.FileName, "Select File./", "")
End With
Data=fso.OpenTextFile(sFile, 1).ReadAll
rChar= trim(InputBox("Qué carácter ..","Replace Character",cashe, 100, 100))
Input=replace(data,vbcrlf,rChar)
Set Data=nothing
Set fFile= fso.CreateTextFile(sFile, True)
fFile.writeLine Input
fFile.close
Set fFile=nothing
set fso=nothing
''Aquí se abre el archivo para ver que se han eliminado los saltos de línea y las líneas en blanco
wshShell.run "notepad " & sFile
Wscript. Quit
PREGUNTA: He intentado instalar el comdl32.ocx en las máquinas clientes sin solucionar el problema. ¿Cómo puedo sustituir el control "de pago y que requiere licencia" para poder suprimir los saltos de línea y párrafos del fichero txt?. ¿Cómo podría arreglar el fichero txt suprimiendo estos saltos de línea y de párrafo de otra forma?.