สวัสดีฉันมีมาโคร Word ที่ควรสแกนเอกสารคำค้นหาคำสั่งแล้วแปลงคำนั้นเป็นตารางโดยใช้คำสั่งในคอลัมน์หนึ่งและผลลัพธ์ในคอลัมน์ 2 ฉันทำอะไรผิดไป
Sub Search()
Dim IsFound As Boolean
IsFound = True
Selection.Find.ClearFormatting
With Selection.Find
.Text = "Command:"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
While IsFound
Selection.ConvertToTable Separator:=wdSeparateByDefaultListSeparator, _
NumColumns:=2, NumRows:=8, AutoFitBehavior:=wdAutoFitFixed
With Selection.Tables(1)
.Style = "Table Grid"
.ApplyStyleHeadingRows = True
.ApplyStyleLastRow = False
.ApplyStyleLastColumn = False
IsFound = Selection.Find.Execute
End With
Wend
End Sub
ขอขอบคุณล่วงหน้าสำหรับความช่วยเหลือ
ยินดีต้อนรับสู่ Super User! มันไม่ทำอะไรกันแน่? เกิดอะไรขึ้น มีข้อความผิดพลาดหรือไม่? กรุณาแก้ไขข้อมูลที่ int คำถามของคุณ ขอบคุณ :)
—
bertieb
ซ้ำครั้งแรกในการ
—
Akina
While IsFound
เริ่มต้นก่อนFind.Execute
... ดำเนินการFind.Execute
ทันทีก่อนWhile IsFound
นอกจากนี้
ขอบคุณสำหรับคำตอบของคุณ ฉันค่อนข้างใหม่ในการสร้างมาโคร อย่างที่เห็น. ไม่พบคำสั่ง word และไม่แปลงข้อความนั้นเป็นตาราง 2 คอลัมน์ 7 แถว วิธีการหรือคุณสมบัตินี้ไม่สามารถใช้ได้เพราะวัตถุที่ฉันว่างเปล่า 4605 มันไม่ได้ที่จะเลือกบางสิ่งบางอย่างด้วยตนเอง แต่ฉันเลือกการค้นหาได้ทำอย่างนั้น
—
ben
หลีกเลี่ยงการใช้การเลือกวัตถุ เลื่อนเคอร์เซอร์ไปที่จุดเริ่มต้นของข้อความและค้นหา "จากตำแหน่งปัจจุบัน" หลังจาก
—
Akina
Command
พบคำถัดไปแล้วให้เลือกแฟรกเมนต์ทั้งหมดที่ต้องการแปลงเป็นรูปแบบตาราง จากนั้นเลื่อนเคอร์เซอร์ไปที่ตารางที่สร้างขึ้นและค้นหาซ้ำ ทำจนกว่าการค้นหาจะล้มเหลว (ไม่พบ)