VBA“喜欢”运算符和通配符

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

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 

通配符在那里,因为实际上,每周文件的名称将从“文件1 – 周1”变为“文件1 – 周2”,依此类推。 关键是,该节点停止在类似的运营商线,所以假设“ 文件1 ”的问题?

任何帮助不胜感激

有一个问题出现在第一次迭代之后。 从你描述问题的方式来看,这听起来像是你想在find一个匹配之后停止search,而不是在第一次尝试之后。

简单地移动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