Как переименовать файл и перезаписать существующий в VBS? - PullRequest
0 голосов
/ 18 февраля 2020

У меня уже есть сценарий VBS, чтобы взять один файл (с именем «Running_12345.xlsx») из одного места и поместить его в папку с именем «Папка». Это почасовой файл с длинным именем в зависимости от времени его запуска.

Теперь я хочу переименовать файл просто в «Running.xlsx», чтобы удалить постоянно меняющееся имя файла. Первоначально этот код работает, но в любом последующем случае происходит сбой, поскольку файл «Running.xlsx» уже был переименован один раз и теперь уже существует. Как добавить перезаписать логи c к этому коду:

dim fso
Set fso = CreateObject("Scripting.FileSystemObject")

set oFldr = fso.getfolder("folder")

for each ofile in oFldr.Files
 if lcase(fso.GetExtensionName(ofile.Name)) = "xlsx" then
  ofile.name = "Running.xlsx"
  Exit for
 end if
Next

1 Ответ

0 голосов
/ 18 февраля 2020

Дух, просто сначала удалите файл. Код ниже делает то, что я хочу:

dim fso
Set fso = CreateObject("Scripting.FileSystemObject")

set oFldr = fso.getfolder("C:\Users\brad.ohara\Desktop\MosaicTransforms\")

fso.DeleteFile("C:\Users\brad.ohara\Desktop\MosaicTransforms\MosaicFile.xlsx")



for each ofile in oFldr.Files
 if lcase(fso.GetExtensionName(ofile.Name)) = "xlsx" then
  ofile.name = "MosaicFile.xlsx"
  Exit for
 end if
Next
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...