我有一个包含40-50个Microsoft Word文档的文件夹。
每个Word文档的结构如下: - 有多个表有两列 - 第二列包含问题,每个问题的末尾都有一个唯一标识符(例如“<#Q123#>”) - 在包含问题的同一单元格中,在包含问题答案的唯一标识符后面有一个文本框
我正在尝试在Microsoft Word中开发一个宏,它将打开文件夹中的每个Word文档,搜索紧跟在指定的唯一标识符之后的文本框,并将其粘贴到具有该宏的新文件中。
如果可以将文本框中的数据提取到Excel文件中,而不是将文本框复制并粘贴到Word文档中,那将是首选,但我不确定这是否可行(因为一些文本框可能包含
答案 0 :(得分:3)
列出的答案here和here可以向您展示如何获取文件夹中的所有文件。
以下VBA代码可用于检索表格第2列中的文本,以及同一单元格中形状(文本框)中的文本。如果在表格单元格中找不到形状(文本框),则On Error Resume Next
语句用于保持代码运行。
Dim cll As Cell
Dim question As String
Dim answer As String
Dim tbl As Table
'Gets the first table in the active document.
'In your code you would assign the Word document that you have
'just opened to a document variable.
Set tbl = ActiveDocument.Tables(1)
On Error Resume Next
For i = 1 To tbl.Rows.Count
Set cll = tbl.Cell(i, 2)
question = cll.Range.Text
answer = cll.Range.ShapeRange.TextFrame.TextRange.Text
'Once you have these two strings, you can do whatever you want with them.
Next