بما ان عنوان الموضوع متفرد حيث يمكن البحث عنه وايجاده بسهولة
مشاركة مع اخي موسى لإثراء الموضوع
في المرفق يتم اخذ نسخة احتياطية كل اسبوع عند فتح النموذج ، بعد ان يتأكد البرنامج انها غير موجودة
اسم النسخة عبارة عن : السنة + رقم الاسبوع خلال هذه السنة
يتم البحث عن النسخة داخل المجلد .. وهنا نستغني عن الجدول لتسجيل النسخة
Dim DBOld As String
Dim DBNew As String
Dim tstfile As Integer
Dim frmtName As String
'--------------------------------
Sub tstBakUp()
Dim i, ii
i = frmtName
Dim MyFSO As New FileSystemObject, Pth As String, Fo As Folder, Fn As File
Pth = CurrentProject.Path & "\tst"
Set Fo = MyFSO.GetFolder(Pth)
For Each Fn In Fo.Files
If ii = i Then tstfile = 1
ii = MyFSO.GetBaseName(Fn)
Next Fn
End Sub
'-------------------------------------
Private Sub Form_Load()
frmtName = Year(Date) & Format(DatePart("ww", Date), "00")
DBOld = CurrentProject.Path & "\db1_Data.mdb"
DBNew = CurrentProject.Path & "\tst\"
tstBakUp
If tstfile = 1 Then
Exit Sub
Else
cpyDatbs
End If
End Sub
'----------------------------------------
Sub cpyDatbs()
On Error Resume Next
Dim OldFile As String, DBwithEXT, DBwithoutEXT, NewFile As String, CopyMyDB
OldFile = DBOld
DBwithEXT = Dir(OldFile)
DBwithoutEXT = Left(DBwithEXT, Len(DBwithEXT) - 4)
Application.SetOption "Use Hijri Calendar", False
NewFile = DBNew & "\" & frmtName & ".mdb"
CopyMyDB = "cmd.exe /C copy " & """" & OldFile & """" & " " & """" & NewFile & """"
Shell CopyMyDB, 0
Me.Requery
Exit Sub
End Sub
نسخة احتياطية كل اسبوع.rar