在同一单元格和同一工作表中搜索多个Excel工作簿以获取值

时间:2014-10-10 14:39:08

标签: excel vba excel-vba

我在新工作中学习VBA,并被分配了一个涉及检查大约100个工作簿中的值的项目。该值包含在100个工作簿中每个工作簿中具有相同名称的工作表中的相同单元格(I12)中。是否有可能使用SQL以某种方式将值从每个工作簿中的一个单元格传递给变量,以便我可以比较它们?我当前的代码打开了每个工作簿来比较值,这些值有效,但非常耗时。

1 个答案:

答案 0 :(得分:1)

如果它只是一个Cell,您可能想尝试 ExecuteExcel4Macro
类似的东西:

Sub Test()
    Dim fexcel
    Dim fpath As String, fval As String, aval
    fpath = "C:\Users\User.Name\FolderName\" '~~> change to suit
    fexcel = Dir(fpath, vbNormal)
    Do While fexcel <> ""
        '~~> Sheet1 should be the sheet name, R12C9 is I12 in R1C1 notation
        fval = "'" & fpath & "[" & fexcel & "]Sheet1'!R12C9"
        aval = ExecuteExcel4Macro(fval)
        '~~> Do your comparison here or dump information in an array
        fexcel = Dir
    Loop
End Sub
相关问题