İlgili kodları aşağıdaki ile değiştiriniz.
Kod:
'1-)klasör oluşturmak için
Dim klasoryeri As String
klasoryeri = "C:\Users\Muhasebe2\YandexDisk\STS" & "\" & "STS Yedekleri"
If Len(Dir(klasoryeri, vbDirectory)) = 0 Then
MkDir (klasoryeri)
MsgBox ("STS Yedekleri Klasörü Oluşturulmuştur."), vbInformation, "STS [Bilgi]"
End If
'2-)Dosyayı,oluşturulan klasöre kopyalamak için
Dim dosyakopyala As Object
If Len(Dir("C:\Users\Muhasebe2\YandexDisk\STS" & "\" & "STS Yedekleri\" & "STS-" & Format(Date, "dd.mm.yyyy") & ".accdb", vbDirectory)) = 0 Then
Set dosyakopyala = CreateObject("Scripting.FileSystemObject")
dosyakopyala.copyfile CurrentProject.Path & "\" & "STS.accdb", "C:\Users\Muhasebe2\YandexDisk\STS" & "\" & "STS Yedekleri\" & "\STS-" & Format(Date, "dd.mm.yyyy") & ".accdb"
MsgBox ("Programın Yedeği Başarıyla Alınmıştır."), vbInformation, "STS [Bilgi]"
Else
MsgBox ("Programın Bugün Yedeği Alınmıştır." & Chr(10) & "Yeni Yedek İçin Lütfen Önce Eski Yedeği Silin"), vbCritical, "STS [Uyarı]"
End If
CurrentProject.path kod ifadesini hatalı kullanmanızdan kaynaklanmaktadır.çünkü;bu ifadenin anlamı,uygulama hangi klasörde ise o klasör içerisine kodlarda yer alan klasörün açılması ve bu klasördeki dosyanın kontrolünün yapılması demektir.
Fakat, CurrentProject.Path & "C:\Users\Muhasebe2\YandexDisk\STS" & "STS Yedekleri" şeklinde yazarsanız,hem uygulamanın olduğu klasör hem de c sürücüsündeki yol çakışacaktır.dolayısı ile de hata oluşacaktır.
bilginize…iyi çalışmalar,saygılar.