Тема: VBS: Обработка всех файлов XLS в каталоге кроме списка исключений.
День добрый. Имеется каталог (к примеру - "E:\- QW -\"). В нем насыпано много файлов .xls / .xlsx / .xlsm. Требуется производить обновление этих данных - по сути - открыть (при открытии макросы и запросы отработают) и сохранить. Но есть нюансы - первыми нужно открыть и сохранить несколько определенных файлов; затем все остальные в директории (там их много); но есть те, которые трогать не нужно. В подкаталоги глубже лезть не требуется. Нарисовал примерно следующее.
"Конструкция" несмотря на корявость частично отрабатывает, но почему-то строка "If FileName <> "PC.xls;PC.xlsx;QR1.xlsm;QR2.xlsm;QR3.xlsm" Then" не отрабатывает по исключениям - они все равно запускаются. Как это можно поправить и как в первой части где обрабаотываются файлы QR1.xlsm / QR2.xlsm / QR3.xlsm указать перечисление... Спасибо.
... или как вариант - брать список отрабатываемых во второй части - из внешнего текстового файла либо...
set App = CreateObject("Excel.Application")
App.visible = true
App.Workbooks.Open("E:\- QW -\QR1.xlsm")
App.ActiveWorkbook.Save
App.Workbooks.Close
App.quit
set App = CreateObject("Excel.Application")
App.visible = true
App.Workbooks.Open("E:\- QW -\QR2.xlsm")
App.ActiveWorkbook.Save
App.Workbooks.Close
App.quit
set App = CreateObject("Excel.Application")
App.visible = true
App.Workbooks.Open("E:\- QW -\QR3.xlsm")
App.ActiveWorkbook.Save
App.Workbooks.Close
App.quit
strTempPath = "E:\- QW -"
Set objFSO=CreateObject("Scripting.FileSystemObject")
Set objFolder=objFSO.GetFolder(strTempPath)
For Each objFile In objFolder.Files
Ext = Mid(objFile, InstrRev(objFile, ".") + 1)
If FileName <> "PC.xls;PC.xlsx;QR1.xlsm;QR2.xlsm;QR3.xlsm" Then
set App = CreateObject("Excel.Application")
App.visible = true
App.Workbooks.Open objFile
App.ActiveWorkbook.Save
App.Workbooks.Close
App.quit
End If
Next