New, Ура, работает! И с исходными файлами xls и xlsx, если в коде в двух местах расширение поменять. Работает с названиями файлов на латинице, на кириллице, с пробелами. Но, если в названии файла есть точка, например, дата вида "Файл 01.05.2021.xls", то файл сохраняется вида "Файл 01.01.2021" и макрос завершается с ошибкой:
Цитата |
---|
Run-time error '91': Object variable or With block variable not set |
Дата изменения файла остаётся текущей. Если к такому файлу дописать расширение .xlsb, то открывается нормально уже в новом формате. В Вашем коде методом логического тыка изменил строчку:
Код |
---|
ActiveWorkbook.SaveAs sFolder & sFileNameWithoutExt, 50 '50 - xlsb |
на:
Код |
---|
ActiveWorkbook.SaveAs sFolder & sFileNameWithoutExt & ".xlsb", 50 '50 - xlsb |
Заработало со всеми файлами.