Salt la conținutul principal

Cum se convertesc în lot documentele Word în fișier txt?

Acest articol vorbește despre cum să convertiți în lot toate documentele Word dintr-un folder specific pentru a separa fișiere TXT în Word.

Conversia în lot a documentelor Word în fișiere txt cu VBA


Conversia în lot a documentelor Word în fișiere txt cu VBA

Codul VBA de mai jos vă poate ajuta să convertiți toate documentele Word dintr-un folder specific în fișiere txt simultan. Vă rugăm să faceți următoarele.

1. În documentul Word, apăsați tasta Alt + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

2. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Module, apoi copiați codul de mai jos în fereastra Module.

Cod VBA: convertiți în lot documentele Word în fișiere 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. apasă pe F5 tasta pentru a rula codul.

4. În Naviga fereastra, selectați folderul conține documente Word pe care le veți converti în fișiere txt și faceți clic pe OK buton. Vedeți captura de ecran:

Apoi, puteți vedea că toate documentele din folderul selectat sunt convertite în fișiere txt simultan. Vedeți captura de ecran:

Cele mai bune instrumente de productivitate de birou

Kutools pentru Cuvânt - Crește-ți experiența Word cu Over 100 Caracteristici remarcabile!

🤖 Asistent AI Kutools: Transformă-ți scrisul cu AI - Generați conținut  /  Rescrie textul  /  Rezumat documente  /  Solicitați informații pe baza Documentului, toate în Cuvânt

📘 Stăpânirea documentelor: Pagini împărțite  /  Fuzionați documente  /  Exportați selecția în diferite formate (PDF/TXT/DOC/HTML...)  /  Conversie lot în PDF  /  Exportați paginile ca imagini  /  Imprimați mai multe fișiere simultan...

Editarea continutului: Găsiți și înlocuiți în lot peste mai multe fișiere  /  Redimensionați toate imaginile  /  Transpuneți rânduri și coloane de tabel  /  Convertiți tabelul în text...

🧹 Curățare fără efort: Îndepărtați Spații suplimentare  /  Secțiuni pauze  /  Toate anteturile  /  Casete text  /  hiperlinkuri  / Pentru mai multe instrumente de îndepărtare, mergeți la nostru Eliminați grupul...

Inserții creative: Inserați Mii de separatori  /  Casete de bifare  /  Butoane radio  /  QR Code  /  coduri de bare  /  Tabel cu linii diagonale  /  Legenda ecuației  /  Image Caption  /  Legenda tabelului  /  Imagini multiple  / Descoperiți mai multe în Inserați grupul...

???? Selectii de precizie: Repera cu precizie pagini specifice  /  tabele  /  forme  /  paragrafele de titlu  / Îmbunătățiți navigarea cu mai mult Selectați caracteristici...

Îmbunătățiri de stele: Navigați rapid în orice locație  /  inserarea automată a textului repetitiv  /  comutați fără probleme între ferestrele documentelor  /  11 Instrumente de conversie...

???? Vrei să încerci aceste funcții? Kutools pentru Word oferă a 60-zi de încercare gratuită, fără limitări! 🚀
 
Comments (22)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Vielen Dank, das ist wirklich sehr hilfreich! Ich werde auf Deine Seite bei der nächsten Gelegenheit verweisen.
Gruß
Uli
This comment was minimized by the moderator on the site
Hi, this works perfectly. Is there a way to choose a different encoding format of the TXT (UTF-8 instead of Windows for example) ?
This comment was minimized by the moderator on the site
Hi Simon,
The following VBA code helps to convert all Word documents in a specified folder to UTF-8 .txt files
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
This comment was minimized by the moderator on the site
Merci beaucoup ! La conversion se fait très bien
This comment was minimized by the moderator on the site
Many thanks
This comment was minimized by the moderator on the site
Hello, Thank you for this post. When I hit "run", I get an error message:"Compile Error: Invalid Outside Procedure." This is whether I use the doc or the docx extension (maybe unrelated but I tried both.) Please can you help? I have no idea how to use code.... and really need to convert a ton of docs. Thank you!
This comment was minimized by the moderator on the site
Hi Durga,
The code works well in my case.
Please make sure that the Module (Code) window contains only the VBA code provided in the post.
This comment was minimized by the moderator on the site
That worked a treat! Thanks!
Rated 5 out of 5
This comment was minimized by the moderator on the site
I NEED them to convert to delimited text files is this possible still.
This comment was minimized by the moderator on the site
I used the script above to batch convert documents in Korean, but the script did not work. When I tired to change the encoding, Can anyone help me with this error?
This comment was minimized by the moderator on the site
Thanks for this - I was just going to code something myself when I thought, "Hey perhaps someone has done this already?" You had, and a deal more elegantly than I would have done. Thanks you for your hard work.
This comment was minimized by the moderator on the site
The script works great for me, but only for one folder. Is there any way to include all subfolders?
This comment was minimized by the moderator on the site
Thank you a lot! Worked like a charm!
This comment was minimized by the moderator on the site
Worked rapidly and perfectly on a folder full of .docx files. I thank you/
This comment was minimized by the moderator on the site
Hi, the code works but at the end gives me 'Runtime error 91', some of my files have objects. Any idea how can I fix this?
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations