Ваша строка Workbooks.Add
создает новую книгу, которая является пустым файлом.Затем он становится ActiveWorkbook
, и поэтому ваша следующая строка сохраняет новый Workbook
, который пуст.
Просматривая ваш код, я предполагаю, что вы пытаетесь сохранить копию исходного файла.,Если это так, вам не нужна строка Workbooks.Add
- удалите ее, и она должна решить вашу проблему.Если вы пытаетесь добавить книгу, хотя и сохраняете копию: - Используйте правильные ссылки вместо Active
, то есть
ActiveWorkbook.SaveCopyAs Filename:=Left(thisWb.FullName, d - 1) & "-Prelims" & Mid(thisWb.FullName, d)
Становится
thisWb.SaveCopyAs Filename:=Left(thisWb.FullName, d - 1) & "-Prelims" & Mid(thisWb.FullName, d)
Вы должны попробоватьизбегать максимально возможного использования операторов Select
или Active
(это полностью исключило бы вашу проблему).Подробнее читайте здесь: Как не использовать Select в Excel VBA