Если я правильно понимаю ваши настройки, вы вводите команду SaveAs
каждые 10 минут, и имя файла будет содержать текущую дату.Таким образом, имя файла остается одним и тем же в течение всего дня, и это приведет к сбою, когда SaveAs
выдается во второй раз.
Почему?Вы просите Excel перезаписать существующий файл.Когда вы подавляете предупреждения, вы не увидите сообщение «Файл уже существует, вы хотите заменить его?» .Затем Excel пытается перезаписать последнюю версию файла текущей, но, поскольку файл (очевидно) открыт, это не удастся.если вы действительно напишите новый файл.Во всех остальных случаях используйте Save
вместо SaveAs
.Обратите внимание, что я добавил расширение к имени файла, чтобы проверка прошла успешно.Я также полностью определил ячейку, в которой ожидается имя файла, чтобы код не переставал работать, когда в данный момент активен другой лист или книга.
fileName1 = ThisWorkbook.Sheets(1).Range("M10") & ".xlsm"
If ThisWorkbook.Name = fileName1 Then
ThisWorkbook.Save
Else
ThisWorkbook.SaveAs path & fileName1, 52
End If