VBA中有没有一种方法可以在目录中查找字符串然后进行循环?

时间:2019-06-22 23:36:13

标签: vba string loops directory

我在下面部分解决了我的问题。在一天的过程中,我想将文件增加1。

当前,如果Excel在mypath中检测到相同名称的文件

,我就可以将具有相同名称(相同字符串)的文件增加1。

例如,如果VBA在目录中检测到Red 06-22-2019 #9,我的文件将另存为Red 06-22-2019 #8

但是,我希望我的所有文件都增加1(无论文件名相同),只检测共享的子字符串(当前日期)。

也就是说,不是让Excel检测相同的文件名并将mycount加1(如下代码所示),我希望Excel在同一目录中检测是否有具有当前日期的文件名({{ 1}})存在。如果是这样,该文件名将增加1。(各种文件名仅共享相同的当前日期,因此理论上我可以每天在一天中增加许多不同的文件名)

因此,当我保存具有与mydate文件名相似的子字符串(当前日期)的另一个文件名(Blue 06-22-2019)时,Excel将递增Red文件名称以1命名(例如,因为它已在我要保存“ Blue”文件的同一目录中检测到8个“ Red”文件)

Blue文件将另存为Blue(对于此示例)

我已经尝试过使用很多置换在循环中工作很多次,但对于整个编码工作,我还是一个相对较新的人

我找不到关于在网上检测子字符串的任何信息

如果可以的话,请提供帮助:)

Blue 06-22-2019 #9

1 个答案:

答案 0 :(得分:1)

您应该能够在目录中使用通配符,例如Dir(mypath&“ *”&mydate&“#”&mycount&“ .xlsx”)。在这种情况下,它将查看具有相同日期的所有文件。