我需要一個VBScript來查找文件夾中最新的文件並對其進行重命名。我已經能夠編寫腳本,以便它找到最新的文件。但是,我無法弄清楚如何正確讓文件重新命名一次。我已經能夠用一個基本的名字重命名這個文件,確認這個腳本是可行的。重命名文件的一部分
文件名需要在中間添加字母「A」。
該文件已保存爲20160229_TITLES
,需要變爲20160229A_TITLES
。
下面是我試圖拉一年並添加「A」的腳本。我想我是否可以讓年份增加到一開始,然後我可以在月份和年份中添加。日期將始終是當前日期。這繼續導致錯誤消息。
Option Explicit
Dim fso, folder, file, Date, recentFile
Dim folderName, searchFileName, renameFileTo
folderName = "C:\Ticket\Test\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folderName)
Set recentFile = Nothing
For Each file In folder.Files
If (recentFile is Nothing) Then
Set recentFile = file
ElseIf FormatDateTime(file.DateLastModified) = Date Then
Set recentFile = file
End If
Next
recentFile.Name = Replace(recentFile.Name, "_", "A_")
謝謝。我用你的第一個例子,並能夠重命名文件夾內的文件,但是,它現在正在更改文件夾中第二個最舊文件的文件名,而不是最新的。 你會碰巧知道爲什麼它不再重命名最近的文件嗎? 謝謝你的幫助。 – jodies
從循環中刪除'Exit For'。您*必須*比較文件夾中的每個*文件。現在,循環將在第一個文件比文件夾中的第一個文件更新後退出。並重命名該文件。 –
謝謝你的幫助。不幸的是,我似乎仍然無法得到它的工作。我刪除了'exit for',現在我在重命名代碼的行上出現錯誤。 錯誤:所需的對象:「 重命名工作正常之前,我刪除了‘’退出(除了它改名爲錯誤的文件) 也許我要對此錯誤的腳本的目的是找到。這個文件是今天保存的並且重新命名它,我不需要瀏覽所有其他的文件,我只需要找到今天的文件,你能提供幫助嗎?謝謝! – jodies