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

วิธีการแปลงเอกสาร Word เป็นไฟล์ txt

บทความนี้พูดถึงวิธีการแปลงเอกสาร Word ทั้งหมดในโฟลเดอร์เฉพาะเพื่อแยกไฟล์ TXT ใน Word

Batch แปลงเอกสาร Word เป็นไฟล์ txt ด้วย VBA


Batch แปลงเอกสาร Word เป็นไฟล์ txt ด้วย VBA

โค้ด VBA ด้านล่างสามารถช่วยในการแปลงเอกสาร Word ทั้งหมดในโฟลเดอร์เฉพาะเป็นไฟล์ txt ได้ในคราวเดียว กรุณาดำเนินการดังนี้

1. ในเอกสาร Word ให้กดปุ่ม อื่น ๆ + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2 ใน Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างคลิก สิ่งที่ใส่เข้าไป > โมดูลจากนั้นคัดลอกโค้ดด้านล่างลงในหน้าต่างโมดูล

รหัส VBA: Batch แปลงเอกสาร Word เป็นไฟล์ 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 กด F5 กุญแจสำคัญในการเรียกใช้รหัส

4 ใน หมวดหมู่สินค้า หน้าต่างเลือกโฟลเดอร์ที่มีเอกสาร Word ที่คุณจะแปลงเป็นไฟล์ txt แล้วคลิกไฟล์ OK ปุ่ม. ดูภาพหน้าจอ:

จากนั้นคุณจะเห็นเอกสารทั้งหมดในโฟลเดอร์ที่เลือกถูกแปลงเป็นไฟล์ txt พร้อมกัน ดูภาพหน้าจอ:


เครื่องมือเพิ่มประสิทธิภาพคำแนะนำ

 

Kutools For Word - คุณสมบัติขั้นสูงมากกว่า 100 รายการสำหรับ Word ประหยัดเวลา 50%

  • การดำเนินการที่ซับซ้อนและซ้ำ ๆ สามารถดำเนินการครั้งเดียวในไม่กี่วินาที
  • แทรกภาพหลาย ๆ โฟลเดอร์ลงในเอกสาร Word พร้อมกัน
  • ผสานและรวมไฟล์ Word หลาย ๆ ไฟล์ในโฟลเดอร์เข้าด้วยกันตามลำดับที่คุณต้องการ
  • แยกเอกสารปัจจุบันออกเป็นเอกสารแยกตามหัวข้อตัวแบ่งส่วนหรือเกณฑ์อื่น ๆ
  • แปลงไฟล์ระหว่าง Doc และ Docx, Docx และ PDF ชุดเครื่องมือสำหรับการแปลงและการเลือกทั่วไปและอื่น ๆ ...
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (21)
ได้รับคะแนน 5 จาก 5 · การจัดอันดับ 1
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันเป็นแฟนของกวี ฉันต้องการแปลงคำมากกว่า 700 คำให้เป็น txt ขอบคุณรูทีนย่อยของคุณ ฉันสามารถทำมันได้ในเวลาไม่นาน
ขอขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เป็นไปได้ไหมที่จะให้รหัสเดียวกันเมื่อฉันใช้ Word ล่าสุดบน Mac ฉันได้รับข้อผิดพลาดรันไทม์ 5948 และจุดดีบักในส่วนนี้: Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)••••ˇˇˇˇ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอขอบคุณ! สิ่งนี้มีประโยชน์อย่างยิ่ง
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
คุณทำให้มันทำงานได้อย่างไร?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ไม่ทำงานสำหรับฉัน ความคิดใด ๆ ว่าทำไม?
ฉันต้องทำเช่นนี้ในเอกสารคำจากโฟลเดอร์เดียวกับที่ฉันต้องการแปลงหรือเอกสารคำใหม่ที่ฉันเริ่มต้นหรือไม่ - ลองใช้ทั้งสองตัวเลือกแล้ว แต่ก็ไม่ได้ผล แต่ฉันก็ไม่ได้รับข้อความแสดงข้อผิดพลาดเช่นกัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันใช้ windows 10 และ Microsoft office 2016
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เปลี่ยน xFileStr = Dir(xFolder & "\*.doc") เป็น xFileStr = Dir(xFolder & "\*.docx") เนื่องจากฉันคิดว่าคุณมีรูปแบบไฟล์คำที่ใหม่กว่า
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี รหัสใช้งานได้ แต่ในตอนท้ายให้ 'ข้อผิดพลาดรันไทม์ 91' แก่ฉัน ไฟล์บางไฟล์ของฉันมีวัตถุ ความคิดใดฉันจะแก้ไขปัญหานี้ได้อย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมาก! ทำงานเหมือนมีเสน่ห์!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ทำงานอย่างรวดเร็วและสมบูรณ์แบบในโฟลเดอร์ที่เต็มไปด้วยไฟล์ .docx ขอบคุณ/
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สคริปต์ใช้งานได้ดีสำหรับฉัน แต่สำหรับโฟลเดอร์เดียวเท่านั้น มีวิธีใดบ้างที่จะรวมโฟลเดอร์ย่อยทั้งหมด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณสำหรับสิ่งนี้ - ฉันเพิ่งจะเขียนโค้ดบางอย่างเองเมื่อคิดว่า "เดี๋ยวก่อนอาจมีคนทำสิ่งนี้ไปแล้ว" คุณมีและข้อตกลงที่หรูหรากว่าที่ฉันจะทำ ขอบคุณสำหรับการทำงานหนักของคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันใช้สคริปต์ด้านบนเพื่อแปลงเอกสารเป็นชุดในภาษาเกาหลี แต่สคริปต์ใช้งานไม่ได้ เมื่อฉันเบื่อที่จะเปลี่ยนการเข้ารหัส ใครก็ได้ช่วยฉันด้วยข้อผิดพลาดนี้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันต้องการให้พวกเขาแปลงเป็นไฟล์ข้อความที่มีตัวคั่นยังเป็นไปได้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ที่ได้ผลการรักษา! ขอบคุณ!
ได้รับคะแนน 5 จาก 5
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ขอบคุณสำหรับโพสต์นี้ เมื่อฉันกด "run" ฉันได้รับข้อความแสดงข้อผิดพลาด: "Compile Error: Invalid Outside Procedure" นี่คือไม่ว่าฉันจะใช้ doc หรือส่วนขยาย docx (อาจไม่เกี่ยวข้อง แต่ฉันลองทั้งสองอย่าง) คุณช่วยได้ไหม ฉันไม่รู้ว่าจะใช้โค้ดอย่างไร.... และจำเป็นต้องแปลงเอกสารเป็นตันจริงๆ ขอขอบคุณ!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี Durga,
รหัสทำงานได้ดีในกรณีของฉัน
โปรดตรวจสอบให้แน่ใจว่าหน้าต่างโมดูล (รหัส) มีเฉพาะรหัส VBA ที่ให้ไว้ในโพสต์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี มันทำงานได้อย่างสมบูรณ์ มีวิธีเลือกรูปแบบการเข้ารหัสที่แตกต่างกันของ TXT หรือไม่ (เช่น UTF-8 แทนที่จะเป็น Windows)
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี Simon
รหัส VBA ต่อไปนี้ช่วยในการแปลงเอกสาร Word ทั้งหมดในโฟลเดอร์ที่ระบุเป็นไฟล์ 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
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เมอร์ซี่ บิวคูป ! La Conversion se fait très bien
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ