Pra, kodi im është të krijoj një kopje të një baze të dhënash duke e mbyllur atë, duke e kopjuar me një emër të ri dhe më pas duke e rihapur origjinalin:
Global appAccess As Object
Sub Auto_Open()
Dim OtherDB As Object
sOther = "E:\6thFormExamples\"
sName = "ActualDB.accdb"
sFullPath = sOther & sName
Set OtherDB = GetObject(sFullPath)
OtherDB.Application.Quit
sNewName = Format(Date, "d-mmmm-yyyy")
Dim fso As Object
Set fso = VBA.CreateObject("Scripting.FileSystemObject")
Call fso.CopyFile(sFullPath, sOther & "Backup" & sNewName & ".accdb", True)
'Reopen DB
Set accessApp = CreateObject("Access.Application")
accessApp.Visible = True
appAccess.OpenCurrentDatabase ("E:\6thFormExamples\ActualDB.accdb")
'Application.Quit
End Sub
Tani e di që shtegu i skedarit është i saktë pasi e gjen për ta mbyllur herën e parë. Gabimi që marr është:
gabimi i kohës së funksionimit 91, ndryshorja e objektit ose ndryshorja me bllok nuk është caktuar.
por nuk mund të gjej se cila variabël si çdo e përdorur funksionon mirë gjatë mbylljes dhe kopjimit të bazës së të dhënave. Running office dhe Excel 2010 nëse bën ndryshim
Gabim shfaqet në linjë
appAccess.OpenCurrentDatabase....
Option Explicit On
në krye të kodit tuaj për të shfaqur një gabim përpiluesi në vend të një gabimi të kohës së ekzekutimit për rastet kur shkruani gabim një emër variabli. 12.11.2015