我有多个Word文件。我想以这样的方式导入它们:文件的名称在单元格A1中,后面是单元格A2:A8中的数据。然后我想要文件夹中的下一个Word文件将文件名导入单元格B2,然后导入单元格B2:B8中的数据。
特定word文件中的数据如下所示:
Z3CC07002466
ZAIC07000270
ZRHC07003384
Z9HC07000576
Z8FC07002646
Z6EC07000339
Z6NC07000746
我想将多个文件导入一个Excel工作表,每个Word文件数据彼此相邻。
VBA可以让我在其中包含多个文档的文件夹中执行此操作吗?
答案 0 :(得分:2)
我认为单词文档有一个非常简单的形式,作为一系列行。如果单词存储在单词表中,则不同的故事。创建并执行此宏:
Sub fromWordDocsToMultiCols()
Dim f As String: f = "c:\SO\"
Dim s As String: s = Dir(f & "*.docx")
Dim wdApp As New Word.Application, wdDoc As Word.Document
Dim col As Integer: col = 1
On Error GoTo errHandler
Do Until s = ""
Set wdDoc = wdApp.Documents.Open(f & s)
wdDoc.Range.Copy
Sheet1.Cells(1, col).Value = s
Sheet1.Cells(2, col).PasteSpecial xlPasteValues
wdDoc.Close False: col = col + 1: s = Dir
Loop
errHandler:
If Err.Number <> 0 Then MsgBox Err.Description
If Not wdApp Is Nothing Then wdApp.Quit False
End Sub