Я пытаюсь переименовать папку, как много вложенных папок и файлов в основной папке переименование основано на многих значениях и необходимо динамическое (я меняю фильмы & названия субтитров)vba - зацикливание и переименование файлов и папок
моя проблема в том, что когда имя папки отвечает на значения имени, макрос не может найти путь для продолжения цикла (если папка не отвечает на значения, тогда макрос работает нормально)
здесь то, что я до сих пор:
Sub moviestest()
Call VideoLibrary("C:\movies")
End Sub
Private Sub VideoLibrary(path As String)
Dim fso As New Scripting.FileSystemObject
Dim fld As folder, f As folder, fl As File
Set fso = CreateObject("Scripting.FileSystemObject")
Set fld = fso.GetFolder(path)
For Each Q In Range("Qname")
For Each fl In fld.Files
myMovie = fl.Name
extension = InStrRev(myMovie, ".")
myNewMovie = _
Replace(_
Replace(_
Replace(_
Replace(_
Left(myMovie, extension - 1), _
".", " "), _
"-", " "), _
"_", " "), _
Q, "") & _
Mid(myMovie, extension)
fso.MoveFile myMovie, myNewMovie
Next
Next
For Each f In fld.SubFolders
Call VideoLibrary(f.path)
Next
End Sub
файлы имя ищут что-то вроде этого:
- The.something.2013.1080p.BluRay.x264.YIFY.mkv The.something.2013.1080p.BluRay.x264.YIFY.sub Zero.something. 2016.1080p.BluRay.x264- [YTS.AG] .avi (и многие другие имена)
диапазон QName является somethig так: (именованный диапазон в Excel)
bdrip
x264
veto
heb
BRRip
XviD
AC3
EVO
blaa
1080p
BluRay
YIFY
Это мой первый вопрос на этом форуме. Надеюсь, я поставил свой вопрос ясным, насколько это возможно любая помощь будет оценена
Что вы делаете с 'Q'? - вы не используете это в своем внутреннем цикле. –
@TimWilliams Он скрыт в 4 или 5 вложенных операциях 'Replace'. – Tim
@Tim - спасибо: не прокручивали ... –