Un script para pasar .doc a RTF, en vbs del word, cosecha propia (lo hice en dos minutos, seguro que puede hacerse mucho mejor):
Código:
strRuta="C:\Documents and Settings\irodriguez\Mis documentos\Libros\30 de Noviembre"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(strRuta)
Set objFiles = objFolder.Files
Set WordApp = CreateObject("Word.Application")
For Each objFile In objFiles
If (objFile.Type = "Documento de Microsoft Office Word 97-2003") Then
MsgBox ("Convirtiendo el archivo " + objFile.Name)
WordApp.Documents.Open (strRuta + "\" + objFile.Name)
WordApp.ActiveDocument.SaveAs strRuta + "\" + objFile.Name + ".rtf", wdFormatRTF
WordApp.ActiveDocument.Close
End If
Next
WordApp.Quit False
Set WordApp = Nothing
Para los no informáticos.
Abrimos un word cualquiera, da igual el que sea.
Le damos al botón de Office (el de la esquina superior izquierda) y pulsamos, en la ventana que se abre, abajo, "Opciones de Word".
En "Más frecuente", marcamos "Mostrar ficha programador en la cinta de opciones"
Aceptamos.
Veremos que tenemos una nueva opción en la barra de herramientas superior: "Programador". Pulsamos (Bienvenidos al maravilloso mundo de los programadores)
Pulsamos "Macros"
Le damos un título sin espacios, por ejemplo "PeritaEnDulce" y le damos a crear.
Se abre una ventana en la que pondrá:
Código:
Sub PeritaEnDulce()
'
' PeritaEnDulce Macro
'
'
End Sub
Cogemos el código que he puesto arriba, al principio y lo pegamos dentro de esas líneas, antes del End Sub
En el código, cambiamos donde dice
Código:
strRuta="C:\Documents and Settings\irodriguez\Mis documentos\Libros\30 de Noviembre"
Y, obviamente, ponemos la ruta donde estén los .doc
Le damos al "Play" (en la barra de herramientas de arriba, aparece como un símbolo, junto a "pausa" y "stop") y le vamos dando a "Aceptar" conforme salgan las ventanas de "Convirtiendo el archivo..."
En el caso de que no encontrara ningún archivo de word, se debe a que tu versión de Word es diferente a la mía.
Entonces, justo debajo de esta línea:
Código:
For Each objFile In objFiles
Añadid, por favor, ésta:
Código:
MsgBox ("Este es tu tipo: " + objFile.Type)
Volvéis a darle al play y saldrá una venta con el mensaje anterior seguido del tipo de archivos de word.
Copiad ese dato y la línea que pone, aceptáis y le dáis al "stop".
Código:
If (objFile.Type = "Documento de Microsoft Office Word 97-2003") Then
Sustituye ese "Documento de Microsoft Office Word 97-2003" Por lo que sea...
Quitamos la línea que hemos añadido y volvéis a darle al play.
Si tenéis problemas, pues me ponéis un privado. Y si alguien tiene tiempo y ganas de mejorarlo, que lo haga...
Por cierto, es necesario tener el Word instalado...
Una vez que todos los Word estén como RTF, el Calibre ya se los traga...
Besos.