当为更多的文件运行脚本时,如果它发现相同的名称,则它会在末尾为重复名称添加递增编号,但随后它会为某些唯一名称添加递增编号,而不是所有唯一名称。
这里出了什么问题?
这是你的推荐人的图片。在图像中,出于隐私考虑,我隐藏了文件名的某些部分。File Name
Option Explicit
Sub RenameAllFilesInFolder()
Dim MyFolder As String
Dim MyFile As String, fName As String
Dim MyFilePatNm As String
Dim owbk As Workbook, ws As Worksheet
Dim v As String, fv As String, chkFile As String
Dim strFileName As String
Dim strFileExists As String
Dim fnum As Integer
MyFolder = "E:\SC_SS\"
MyFile = Dir(MyFolder & "*size*.xls")
Do Until MyFile = ""
MyFilePatNm = MyFolder & MyFile
Set owbk = Workbooks.Open(MyFilePatNm)
Set ws = owbk.Sheets(1)
v = "SS_" & ws.[C3].Value
chkFile = v & ".xls"
strFileName = MyFolder & chkFile
strFileExists = Dir(strFileName)
Do While strFileExists <> ""
fnum = fnum + 1
strFileExists = Dir(MyFolder & v & " " & fnum & ".xls")
Loop
If fnum > 0 Then
fv = v & " " & fnum & ".xls"
Else
fv = v & ".xls"
End If
fName = MyFolder & fv
ws.SaveAs Filename:=fName, FileFormat:=xlExcel8, CreateBackup:=False
Windows(fv).Close False
Kill MyFilePatNm
MyFile = Dir(MyFolder & "*size*.xls")
Loop
End Sub发布于 2020-09-03 00:34:09
我完成了这项工作,在下面将fnum设置为零。
If fnum > 0 Then
fv = v & " " & fnum & ".xls"
Else
fv = v & ".xls"
End If
fnum = 0https://stackoverflow.com/questions/63709148
复制相似问题