如何从500 .xls Excel文件中获取单元格中的数据?

时间:2014-08-02 11:49:54

标签: excel vba excel-vba xls

我想问你如何从许多Excel .xls文件中获取来自几个确定(并且始终相同)单元格的数据,即。我在一个文件夹中有一个.xls文件列表,每个文件内部都有相同的表,但具有不同的值。我想从文件夹中的所有文件中获取A1C2E3中的数据,并将它们放在新Excel文件中的新表中。

请问有办法怎么做? :) 谢谢! ;)

1 个答案:

答案 0 :(得分:2)

我按如下方式检索外部数据:

创建一个名为" x" 的工作表,为我想要获得的每项数据指定以下信息:

info

所以我有 A,B,C,D

列中项目的文件夹名称,文件名,工作表名称和单元格引用

然后运行以下宏:

Sub GetExternalData()

    Dim wbPath As String, WorkbookName As String
    Dim WorksheetName As String, CellRef As String
    Dim Ret As String, i As Long, N As Long

    For i = 1 To Sheets("x").Cells(Rows.Count, 1).End(xlUp).Row

        wbPath = Sheets("x").Cells(i, 1).Value
        WorkbookName = Sheets("x").Cells(i, 2).Value
        WorksheetName = Sheets("x").Cells(i, 3).Value
        CellRef = Sheets("x").Cells(i, 4).Value

        Ret = "'" & wbPath & "[" & WorkbookName & "]" & _
              WorksheetName & "'!" & Range(CellRef).Address(True, True, -4150)

        Sheets("x").Cells(i, 5).Value = ExecuteExcel4Macro(Ret)
    Next i
End Sub

宏将使用数据填充 E 列。

在您的案例中, A 将填充复制值,因为您的文件都在一个文件夹中。