VBA "Like" 运算符和通配符

VBA "Like" operator and wildcard

我有一个循环可以激活某个文件并复制数据;它不起作用,我不明白为什么。请看下面:

For Each w In Workbooks
    If w.Name Like "*File 1*" Then
        Windows(w.Name).Activate
        Sheets("Test").Range("C7:C15").Copy
    End If
Exit For
Next w

使用通配符是因为实际上,每周文件名都会从 "File 1 - week1" 更改为 "File 1 - week2",依此类推。 重点是,vode 停在 like operator 行,因此假设“File 1”有问题?

非常感谢任何帮助

出现一个问题,您在第一次迭代后退出。从您描述问题的方式来看,您似乎想在找到匹配项后停止搜索,而不是在第一次尝试后停止搜索。

只需移动 Exit For,像这样:

For Each w In Workbooks
    If w.Name Like "*File 1*" Then
        Windows(w.Name).Activate
        Sheets("Test").Range("C7:C15").Copy
        Exit For
    End If
Next w