Dir指的是同一个文件的两次

时间:2014-05-27 15:17:56

标签: excel vba excel-vba

我正在使用此代码

 sFile = Dir(sFold & "*.xls*")

 Do While sFile <> "" MsgBox (sFile)

     ext = "." + Right$(sFile, Len(sFile) - InStrRev(sFile, ".")) 
     sFile = Replace(sFile, ext, "")

     Name sFold + sFile + ext As sFold + tbPrefiks4.Value + sFile +
     tbSufiks4.Value + ext

     sFile = Dir

 Loop

为了重命名目录中的所有文件,但似乎在某些情况下,Dir返回前一次迭代中已更改的文件/它重命名目录中的所有文件,然后返回重命名第一个/。这个问题有解决办法吗?

示例:我有3个文件1.xlsx,2.xlsx,3.xlsx,并希望为它们添加A_前缀和_W sufix,因此它将其重命名为A_1_W.xlsx,A_2_W.xlsx和A_3_W.xlsx但是然后回到第一个并将其更改为A_A_1_W_W.xlsx,那就是全部。奇怪的是没有'_'就不会发生。

0 个答案:

没有答案