循环浏览预处理文件夹中的excel文件(vba)

时间:2017-05-17 07:21:10

标签: vba xls

我是网站新手,我正在学习VBA。

基本上,我创建了一个代码,它循环遍历文件夹中的excel文件并处理一些数据,这些数据随后在单个公共excel文件中实现,其中包含A列中已处理文件的名称以及我要记录的所有数据以下细胞。

由于我正在使用大量的XSL文件并且文件夹不断更新新文件,我想知道当宏启动并跳过预处理文件时,哪种方法再次通过文件是最简单的方法,为了记录新的。

感谢您的建议

1 个答案:

答案 0 :(得分:1)

添加一项功能,检查您的文件是否已被处理。假设您在第一个工作表的A列中有已处理文件的列表:

Function FileAlreadyProcessed(filename As String) As Boolean
    Dim r As Range, matchRes As Variant
    Set r = ThisWorkbook.Sheets(1).Range("A:A")

    matchRes = Application.Match(filename, r, 0)
    FileAlreadyProcessed = (Not IsError(matchRes))
End Function

此功能将在Col A中搜索文件名。找到后,该函数将返回true,否则返回false。所以在循环中添加一个检查

if not FileAlreadyProcessed(fileName) then
    ... do your processing
endif