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

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:


Instrumente de productivitate Word recomandate

 

Kutools pentru Word - Mai mult de 100 de funcții avansate pentru Word, economisiți-vă 50% timp

  • Operațiile complicate și repetate pot fi efectuate o singură dată în câteva secunde.
  • Inserați mai multe imagini în foldere în documentul Word simultan.
  • Combinați și combinați mai multe fișiere Word din foldere într-unul singur cu comanda dorită.
  • Împărțiți documentul curent în documente separate în funcție de titlu, secțiune de secțiune sau alte criterii.
  • Convertiți fișiere între Doc și Docx, Docx și PDF, colecție de instrumente pentru conversii și selecție obișnuite și așa mai departe ...
Comentarii (22)
Evaluat 5 din 5 · evaluări 1
Acest comentariu a fost redus la minimum de moderatorul de pe site
Sunt un fan al poeziei. Aveam nevoie să convertesc mai mult de 700 de compoziții de cuvinte în txt. Datorită subrutinei tale, am reușit să o fac în cel mai scurt timp.
mulțumesc
Acest comentariu a fost redus la minimum de moderatorul de pe site
Ar fi posibil să furnizez același cod atunci când folosesc cel mai recent Word pe un Mac? Primesc eroarea Run-Time 5948 și puncte de depanare la această secțiune: Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)••••ˇˇˇˇ
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumesc! Acest lucru este extrem de util
Acest comentariu a fost redus la minimum de moderatorul de pe site
Cum ai făcut-o să funcționeze?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Nu funcționează pentru mine, aveți idei de ce?
Trebuie să fac acest lucru într-un document Word din același folder pe care vreau să îl convertesc sau în orice document Word nou pe care îl încep? -Am încercat ambele opțiuni și niciuna nu funcționează, dar nici nu primesc niciun mesaj de eroare
Acest comentariu a fost redus la minimum de moderatorul de pe site
Folosesc Windows 10 și Microsoft Office 2016
Acest comentariu a fost redus la minimum de moderatorul de pe site
Schimbați xFileStr = Dir(xFolder & "\*.doc") în xFileStr = Dir(xFolder & "\*.docx") deoarece presupun că aveți un format de fișiere Word mai nou.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, codul funcționează, dar la sfârșit îmi dă „Eroare de rulare 91”, unele dintre fișierele mele au obiecte. Ai idee cum pot remedia asta?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Multumesc mult! A mers perfect!
Acest comentariu a fost redus la minimum de moderatorul de pe site
A funcționat rapid și perfect pe un folder plin de fișiere .docx. Multumesc/
Acest comentariu a fost redus la minimum de moderatorul de pe site
Scriptul funcționează excelent pentru mine, dar numai pentru un folder. Există vreo modalitate de a include toate subfolderele?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumesc pentru asta - aveam de gând să codific ceva eu ​​însumi când m-am gândit: „Hei, poate cineva a făcut asta deja?” Ai avut, și o înțelegere mai elegant decât aș fi făcut eu. Vă mulțumesc pentru munca depusă.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am folosit scriptul de mai sus pentru a converti documente în lot în coreeană, dar scriptul nu a funcționat. Când am obosit să schimb codificarea, mă poate ajuta cineva cu această eroare?
Acest comentariu a fost redus la minimum de moderatorul de pe site
AM NEVOIE de ele pentru a converti în fișiere text delimitate, este încă posibil.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Asta a funcționat un răsfăț! Mulțumiri!
Evaluat 5 din 5
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, mulțumesc pentru această postare. Când apăs pe „Run”, primesc un mesaj de eroare: „Eroare de compilare: Procedură în afara invalidă”. Acesta este dacă folosesc extensia doc sau docx (poate fără legătură, dar le-am încercat pe ambele.) Vă rog, puteți ajuta? Nu am idee cum să folosesc codul... și chiar trebuie să convertesc o mulțime de documente. Mulțumesc!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Durga,
Codul funcționează bine în cazul meu.
Vă rugăm să vă asigurați că fereastra Modul (Cod) conține doar codul VBA furnizat în postare.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, funcționează perfect. Există o modalitate de a alege un alt format de codare pentru TXT (UTF-8 în loc de Windows, de exemplu)?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Simon,
Următorul cod VBA ajută la convertirea tuturor documentelor Word dintr-un folder specificat în fișiere 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
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mersi
Acest comentariu a fost redus la minimum de moderatorul de pe site
Multumesc frumos ! La conversion se fait très bien
Acest comentariu a fost redus la minimum de moderatorul de pe site
Vielen Dank, das ist wirklich sehr hilfreich! Ich werde auf Deine Seite bei der nächsten Gelegenheit verweisen.
Salut
Uli
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL