У меня есть этот код, который я получил где-то (кредит для автора) и немного изменил, чтобы сделать автоматическое резервное копирование моей базы данных каждые 7 дней.Доступ к базе данных Autobackup
Function fMakeBackup() As Boolean
Dim Source As String
Dim Target As String
Dim retval As Integer
On Error GoTo sysBackup_Err
Source = CurrentDb.name
Target = "d:\"
Target = Target & Format(Date, "mm-dd-yyyy") & " "
Target = Target & Format(Time, "hh-mm") & ".accdb"
If DateDiff("d", DLookup("[BackupDate]", "WinAutoBackup", "[BckID] =1"), Date) = 7 Then
retval = 0
Dim objFSO As Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
retval = objFSO.CopyFile(Source, Target, True)
Set objFSO = Nothing
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE WinAutoBackup SET WinAutoBackup.BackupDate = Date();"
DoCmd.SetWarnings True
MsgBox "Backup successfull. Next auto backup in 7 days"
Else
Exit Function
End If
sysBackup_Exit:
Exit Function
sysBackup_Err:
MsgBox Err.Description, , "sysBackup()"
Resume sysBackup_Exit
End Function
как я могу изменить путь, так что все резервные копии файлов перейти в папку под названием подпорки внутри же каталоге, что и основной файл базы данных бэкенд?
Thx Gustav. Но мне может понадобиться изменить этот путь в любое время, когда мне нужно использовать db на другом компьютере. Особенно, если нет привода f: \. Есть ли способ позволить системе идентифицировать путь самостоятельно, чтобы не было необходимости всегда изменять код vba? – ezybusy