以一致的格式将Word文件名和数据导入Excel

时间:2015-09-25 18:45:41

标签: excel vba excel-vba

我有多个Word文件。我想以这样的方式导入它们:文件的名称在单元格A1中,后面是单元格A2:A8中的数据。然后我想要文件夹中的下一个Word文件将文件名导入单元格B2,然后导入单元格B2:B8中的数据。

特定word文件中的数据如下所示:

Z3CC07002466
ZAIC07000270
ZRHC07003384
Z9HC07000576
Z8FC07002646
Z6EC07000339
Z6NC07000746

我想将多个文件导入一个Excel工作表,每个Word文件数据彼此相邻。

enter image description here

VBA可以让我在其中包含多个文档的文件夹中执行此操作吗?

1 个答案:

答案 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