One thing that may make it even better, is adding support for subdirectories. (That is: Files in multiple subdirectories)
I am an absolute newbie in this, and don't know the syntax, the parameter, or where to add that.
Could somebody help?
หากคุณมีไฟล์คำหลายโหลที่มีเนื้อหาเดียวกัน (เช่นส่วนหัวส่วนท้ายคำหรือตัวเลขพิเศษบางคำ) และคุณจำเป็นต้องแทนที่เนื้อหาเดียวกันในเอกสารเหล่านั้นใน Word จะง่ายกว่าอย่างไรที่คุณจะทำมันให้เสร็จอย่างรวดเร็ว? แน่นอนคุณสามารถเปิดไฟล์เหล่านั้นทีละไฟล์เพื่อแทนที่เนื้อหาเดียวกันได้ แต่จะใช้เวลานานและยุ่งยาก บทช่วยสอนนี้จะแสดงวิธีที่ยุ่งยากในการแทนที่เนื้อหาเดียวกันภายในเอกสารหลายฉบับใน Word พร้อมกัน
ค้นหาและแทนที่ข้อความในเอกสารหลายคำพร้อมกันด้วยรหัส VBA
ค้นหาและแทนที่ข้อความที่แตกต่างกันในเอกสารหลายฉบับพร้อมกันได้อย่างง่ายดายด้วย Kutools for Word
1 กด อื่น ๆ + F11 เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง
2 ใน Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างคลิก สิ่งที่ใส่เข้าไป > โมดูลจากนั้นคัดลอกรหัส VBA ต่อไปนี้ลงในหน้าต่างโมดูล
รหัส VBA: การค้นหาและแทนที่เนื้อหาเดียวกันในเอกสารหลายชุดพร้อมกัน
Sub CommandButton1_Click() 'Updated by Extendoffice 20180625 Dim xFileDialog As FileDialog, GetStr(1 To 100) As String '100 files is the maximum applying this code Dim xFindStr As String Dim xReplaceStr As String Dim xDoc As Document On Error Resume Next Set xFileDialog = Application.FileDialog(msoFileDialogFilePicker) With xFileDialog .Filters.Clear .Filters.Add "All WORD File ", "*.docx", 1 .AllowMultiSelect = True i = 1 If .Show = -1 Then For Each stiSelectedItem In .SelectedItems GetStr(i) = stiSelectedItem i = i + 1 Next i = i - 1 End If Application.ScreenUpdating = False xFindStr = InputBox("Find what:", "Kutools for Word", xFindStr) xReplaceStr = InputBox("Replace with:", "Kutools for Word", xReplaceStr) For j = 1 To i Step 1 Set xDoc = Documents.Open(FileName:=GetStr(j), Visible:=True) Windows(GetStr(j)).Activate Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = xFindStr 'Find What .Replacement.Text = xReplaceStr 'Replace With .Forward = True .Wrap = wdFindAsk .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Application.Run macroname:="NEWMACROS" ActiveDocument.Save ActiveWindow.Close Next Application.ScreenUpdating = True End With MsgBox "Operation end, please view", vbInformation End Sub
3 กด F5 กุญแจสำคัญในการเรียกใช้รหัส
4. ในการเปิด หมวดหมู่สินค้า โปรดค้นหาและเลือกเอกสารที่คุณจะพบและแทนที่ข้อความภายในจากนั้นคลิกที่ไฟล์ OK ปุ่ม. ดูภาพหน้าจอ:
5. ในครั้งแรก Kutools สำหรับ Word ให้ป้อนข้อความที่คุณจะพบในเอกสารต่างๆลงในไฟล์ สิ่งที่ค้นหา จากนั้นคลิกที่ไฟล์ OK ปุ่ม
6. ในวินาทีที่ Kutools สำหรับ Word กล่องโต้ตอบป้อนข้อความที่คุณจะแทนที่แล้วคลิกไฟล์ OK ปุ่ม
8 คลิกที่ OK ในปุ่มถัดไป Microsoft Word กล่องโต้ตอบเพื่อสิ้นสุดการค้นหาและแทนที่
ในกรณีนี้คำทั้งหมด "Word" ในเอกสารที่เลือกจะถูกแทนที่ด้วย "Excel" พร้อมกัน
ที่นี่ขอแนะนำ ค้นหาแบทช์และแทนที่ คุณลักษณะของ Kutools สำหรับ Word. ด้วยคุณสมบัตินี้คุณสามารถค้นหาและแทนที่ข้อความต่างๆในเอกสาร Word หลาย ๆ ชุดในเวลาเดียวกันได้อย่างง่ายดาย มาดูวิธีใช้คุณสมบัตินี้เพื่อค้นหาและแทนที่ข้อความในเอกสาร
Kutools สำหรับ Word : ด้วยโปรแกรมเสริม Word ที่มีประโยชน์มากกว่า 100 รายการ ทดลองใช้ฟรีโดยไม่มีข้อ จำกัด ใน 60 วัน.
1. กรุณาคลิก Kutools Plus > ค้นหาแบทช์และแทนที่ เพื่อเปิดใช้คุณลักษณะนี้
2 ใน ค้นหาแบทช์และแทนที่ โปรดกำหนดค่าดังต่อไปนี้
3 ปิด ค้นหาแบทช์และแทนที่ กล่องโต้ตอบ
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคุณลักษณะนี้โปรด คลิกที่นี่....
หากคุณต้องการทดลองใช้ยูทิลิตีนี้ฟรีโปรดไปที่ ดาวน์โหลดซอฟต์แวร์ฟรี ก่อนแล้วไปใช้การดำเนินการตามขั้นตอนข้างต้น