Note: The other languages of the website are Google-translated. Back to English

¿Cómo convertir por lotes documentos de Word a archivos txt?

Este artículo habla sobre cómo convertir por lotes todos los documentos de Word en una carpeta específica para separar archivos TXT en Word.

Convierta por lotes documentos de Word a archivos txt con VBA


Convierta por lotes documentos de Word a archivos txt con VBA

El siguiente código VBA puede ayudar a convertir todos los documentos de Word en una carpeta específica a archivos txt a la vez. Haz lo siguiente.

1. En un documento de Word, presione el otro + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. En el Microsoft Visual Basic para aplicaciones ventana, haga clic recuadro > Módulo, luego copie el código siguiente en la ventana del módulo.

Código VBA: convertir por lotes documentos de Word a archivos txt

Sub ConvertDocumentsToTxt()
'Updated by Extendoffice 20181123
    Dim xIndex As Long
    Dim xFolder As Variant
    Dim xFileStr As String
    Dim xFilePath As String
    Dim xDlg As FileDialog
    Dim xActPath As String
    Dim xDoc As Document
    Application.ScreenUpdating = False
    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xDlg.Show <> -1 Then Exit Sub
    xFolder = xDlg.SelectedItems(1)
    xFileStr = Dir(xFolder & "\*.doc")
    xActPath = ActiveDocument.Path
    While xFileStr <> ""
        xFilePath = xFolder & "\" & xFileStr
        If xFilePath <> xActPath Then
            Set xDoc = Documents.Open(xFilePath, AddToRecentFiles:=False, Visible:=False)
            xIndex = InStrRev(xFilePath, ".")
            Debug.Print Left(xFilePath, xIndex - 1) & ".txt"
            xDoc.SaveAs Left(xFilePath, xIndex - 1) & ".txt", FileFormat:=wdFormatText, AddToRecentFiles:=False
            xDoc.Close True
        End If
        xFileStr = Dir()
    Wend
    Application.ScreenUpdating = True
End Sub

3. presione el F5 clave para ejecutar el código.

4. En el Búsqueda de ventana, seleccione la carpeta que contiene los documentos de Word que convertirá a archivos txt y haga clic en el OK botón. Ver captura de pantalla:

Luego puede ver que todos los documentos en la carpeta seleccionada se convierten a archivos txt a la vez. Ver captura de pantalla:


Herramientas de productividad de palabras recomendadas

 

Kutools para Word: más de 100 funciones avanzadas para Word, ahorre su 50% de tiempo

  • Las operaciones complicadas y repetidas se pueden realizar un solo procesamiento en segundos.
  • Inserte varias imágenes en carpetas en un documento de Word a la vez.
  • Fusiona y combina varios archivos de Word en carpetas en uno con el orden que desees.
  • Divida el documento actual en documentos separados según el encabezado, el salto de sección u otros criterios.
  • Convierta archivos entre Doc y Docx, Docx y PDF, colección de herramientas para conversiones y selección comunes, etc.
Comentarios (22)
5 clasificado de 5 · 1 calificaciones
Este comentario fue minimizado por el moderador en el sitio
Soy fan de la poesía. Necesitaba convertir más de 700 composiciones de palabras a txt. Gracias a tu subrutina logré hacerlo en poco tiempo.
Gracias
Este comentario fue minimizado por el moderador en el sitio
¿Sería posible proporcionar el mismo código cuando uso la versión más reciente de Word en una Mac? Obtengo el error de tiempo de ejecución 5948 y la depuración apunta a esta sección: Establecer xDlg = Application.FileDialog(msoFileDialogFolderPicker)••••ˇˇˇˇ
Este comentario fue minimizado por el moderador en el sitio
¡Gracias! Esto es extremadamente útil.
Este comentario fue minimizado por el moderador en el sitio
Como hiciste que funcionara?
Este comentario fue minimizado por el moderador en el sitio
No funciona para mí, ¿alguna idea de por qué?
¿Necesito hacer esto en un documento de Word de la misma carpeta que quiero convertir o cualquier documento de Word nuevo que comience? -Probé ambas opciones y ninguna funciona, pero tampoco recibo ningún mensaje de error.
Este comentario fue minimizado por el moderador en el sitio
estoy usando windows 10 y microsoft office 2016
Este comentario fue minimizado por el moderador en el sitio
Cambie xFileStr = Dir(xFolder & "\*.doc") a xFileStr = Dir(xFolder & "\*.docx") ya que supongo que tiene un formato de archivos de Word más nuevo.
Este comentario fue minimizado por el moderador en el sitio
Hola, el código funciona pero al final me da 'Runtime error 91', algunos de mis archivos tienen objetos. ¿Alguna idea de cómo puedo arreglar esto?
Este comentario fue minimizado por el moderador en el sitio
¡Muchas gracias! ¡Trabajado como un encanto!
Este comentario fue minimizado por el moderador en el sitio
Funcionó rápida y perfectamente en una carpeta llena de archivos .docx. Te lo agradezco/
Este comentario fue minimizado por el moderador en el sitio
El script funciona muy bien para mí, pero solo para una carpeta. ¿Hay alguna forma de incluir todas las subcarpetas?
Este comentario fue minimizado por el moderador en el sitio
Gracias por esto. Iba a codificar algo yo mismo cuando pensé: "Oye, ¿quizás alguien ya lo haya hecho?". Lo hiciste, y un trato más elegante de lo que yo lo habría hecho. Gracias por su arduo trabajo.
Este comentario fue minimizado por el moderador en el sitio
Utilicé la secuencia de comandos anterior para convertir por lotes documentos en coreano, pero la secuencia de comandos no funcionó. Cuando me cansé de cambiar la codificación, ¿alguien puede ayudarme con este error?
Este comentario fue minimizado por el moderador en el sitio
NECESITO que se conviertan a archivos de texto delimitados, ¿es esto posible todavía?
Este comentario fue minimizado por el moderador en el sitio
¡Eso funcionó de maravilla! ¡Gracias!
5 clasificado de 5
Este comentario fue minimizado por el moderador en el sitio
Hola, gracias por esta publicación. Cuando presiono "ejecutar", aparece un mensaje de error: "Error de compilación: procedimiento externo no válido". Esto es si uso la extensión doc o docx (tal vez no esté relacionada, pero probé ambas). Por favor, ¿pueden ayudarme? No tengo idea de cómo usar el código... y realmente necesito convertir una tonelada de documentos. ¡Gracias!
Este comentario fue minimizado por el moderador en el sitio
Hola Durga,
El código funciona bien en mi caso.
Asegúrese de que la ventana Módulo (Código) contenga solo el código VBA proporcionado en la publicación.
Este comentario fue minimizado por el moderador en el sitio
Hola, esto funciona perfectamente. ¿Hay alguna forma de elegir un formato de codificación diferente del TXT (UTF-8 en lugar de Windows, por ejemplo)?
Este comentario fue minimizado por el moderador en el sitio
Hola simón
El siguiente código VBA ayuda a convertir todos los documentos de Word en una carpeta específica a archivos UTF-8 .txt
Sub ConvertDocumentsToTxt()
'Updated by Extendoffice 20201031
    Dim xIndex As Long
    Dim xFolder As Variant
    Dim xFileStr As String
    Dim xFilePath As String
    Dim xDlg As FileDialog
    Dim xActPath As String
    Dim xDoc As Document
    Application.ScreenUpdating = False
    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xDlg.Show <> -1 Then Exit Sub
    xFolder = xDlg.SelectedItems(1)
    xFileStr = Dir(xFolder & "\*.doc")
    xActPath = ActiveDocument.Path
    While xFileStr <> ""
        xFilePath = xFolder & "\" & xFileStr
        If xFilePath <> xActPath Then
            Set xDoc = Documents.Open(xFilePath, AddToRecentFiles:=False, Visible:=False)
            xIndex = InStrRev(xFilePath, ".")
            xDoc.SaveAs Left(xFilePath, xIndex - 1) & ".txt", FileFormat:=wdFormatText, AddToRecentFiles:=False, Encoding:=msoEncodingUTF8
            xDoc.Close True
        End If
        xFileStr = Dir()
    Wend
    Application.ScreenUpdating = True
End Sub
Este comentario fue minimizado por el moderador en el sitio
Muchas gracias
Este comentario fue minimizado por el moderador en el sitio
Muchas gracias ! La conversión se fait très bien
Este comentario fue minimizado por el moderador en el sitio
Vielen Dank, das ist wirklich sehr hilfreich! Ich werde auf Deine Seite bei der nächsten Gelegenheit verweisen.
Saludo
Uli
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Seguinos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL