Как я уже упоминал в комментарии, вы не можете получить сообщение об ошибке «Файл не найден» в строке .SaveAs
. Перед использованием файла в Set objFile = objFSO.GetFile(DbFile)
и Kill (DbFile)
необходимо проверить, существует ли файл. В противном случае вы получите ошибку File Not Found
. Вот пример.
'~~> Check if DbFile is not empty
If Len(Trim(DbFile)) = 0 Then Exit Sub
'~~> Check if file exists
If Dir(DbFile) <> "" Then
LastLocalChange = WS1.Range("O5").Value
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(DbFile)
If objFile.DateLastModified < LastLocalChange Then
Kill (DbFile)
ThisWorkbook.Sheets("Data Output(Hidden)").Copy
' i get the error on the next line (you cannot make code bold)
ActiveWorkbook.SaveAs DbFile, FileFormat:=51
ActiveWorkbook.Close False
End If
End If