Konu Araçları | Konu Seçenekleri | Gösterim Stili
Tarih
02/12/2018 17:33
Konu Sahibi
notrino
Yorumlar
6
Okunma
369
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy

notrino

Aktif Üye*
79958
 170
 602
 18/02/2016
31
 İzmir
 
 Ofis 2010 32 Bit
 27/01/2019,17:30
Çözüldü 
Merhabalar,

Bir VT uygulamasını otomatik olarak yedekleme ile ilgili sitede bir sürü bilgi buldum ancak kafam karıştı ve hiçbirini kendi uygulamama entegre edemiyorum. Özellikle kodun içine gömeceğim belli bir süre dolunca (örneğin saatte 1) sistem yedekleme yapsın istiyorum. Ama buna gelmeden önce ve çalışma mantığını anlayabilmem içinekteki örneğimdeki butona, "en basit hali ile (süreye falan gerek olmadan)" hangi kod eklenirse butona her basışımda yedek aldırabilirim? Şimdiden teşekkürler.



haliliyas

Uzman
65596
Ha.... Ya....
 Belirtilmemiş
 23
 1.033
 30/07/2014
172
 -
 
 Ofis 2019 64 Bit
 Bugün,03:59
en basit hali ile aşağıdaki kodları butona ekleyebilirsiniz ama önce 
  • Alt+F11 basım Araçlar- Tools > referanslar-References açıp
  • "Microsoft Scripting Runtime" eklemelisiniz 
[Resim: do.php?imgf=154376851095641.jpg]

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Komut11_Click()
strFrom = Application.CurrentProject.Path & "\" & Application.CurrentProject.Name
strTo = Application.CurrentProject.Path & "\yedek\" & Application.CurrentProject.Name
    
    Dim fso As FileSystemObject
        Dim sSourcePath As String
        Dim sSourceFile As String
        Dim sBackupPath As String
        Dim sBackupFile As String
        Dim DB As New Access.Application
If Len(Dir(Application.CurrentProject.Path & "\yedek", vbDirectory)) = 0 Then
   MkDir Application.CurrentProject.Path & "\yedek"
End If
        Set fso = New FileSystemObject
        fso.copyFile strFrom, strTo, True
        Set fso = Nothing
        Beep
        MsgBox "Backup was successful and Saved" & "Backup completed"
End Sub

dilerim işinize yarar



notrino

Aktif Üye*
79958
 170
 602
 18/02/2016
31
 İzmir
 
 Ofis 2010 32 Bit
 27/01/2019,17:30
(02/12/2018 19:32)haliliyas Adlı Kullanıcıdan Alıntı: en basit hali ile aşağıdaki kodları butona ekleyebilirsiniz ama önce 
  • Alt+F11 basım Araçlar- Tools > referanslar-References açıp
  • "Microsoft Scripting Runtime" eklemelisiniz 
[Resim: do.php?imgf=154376851095641.jpg]

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Komut11_Click()
strFrom = Application.CurrentProject.Path & "\yedekleme_uygulamas?.accdb"
strTo = Application.CurrentProject.Path & "\yedek\yedekleme_uygulamas?.accdb"
    
    Dim fso As FileSystemObject
        Dim sSourcePath As String
        Dim sSourceFile As String
        Dim sBackupPath As String
        Dim sBackupFile As String
        Dim DB As New Access.Application
If Len(Dir(Application.CurrentProject.Path & "\yedek", vbDirectory)) = 0 Then
   MkDir Application.CurrentProject.Path & "\yedek"
End If
        Set fso = New FileSystemObject
        fso.copyFile strFrom, strTo, True
        Set fso = Nothing
        Beep
        MsgBox "Backup was successful and Saved" & "Backup completed"
End Sub

dilerim işinize yarar


Merhaba Halil Bey, evet iş görüyor. Yeri gelmişken şunu sorayım;
Elle manuel yaptığımız klasik yedekleme prosedüründe biliyorsunuz, belirttiğiniz yerde ayrı bir backup dosyası şeklinde tarih bilgisi ile birlikte bir dosya yaratılıyor. Bu verdiğiniz örnek ise, butona her basışta sanki aynı dosya üzerine yazıyor. Doğru anlıyorum değil mi? Yani bu kodlama mevcut dosyayı bir nevi copy-paste mi ediyor yoksa farklı bir şey mi yapıyor? Tşk.



haliliyas

Uzman
65596
Ha.... Ya....
 Belirtilmemiş
 23
 1.033
 30/07/2014
172
 -
 
 Ofis 2019 64 Bit
 Bugün,03:59
haklısınız copy past yapıyor
isterseniz isimlendirme aşamasında ismin başına
strTo = Application.CurrentProject.Path & "\yedek\" & date() & "_" & Application.CurrentProject.Name

şeklinde yazarsanız tarih ekleyerek kaydeder



notrino

Aktif Üye*
79958
 170
 602
 18/02/2016
31
 İzmir
 
 Ofis 2010 32 Bit
 27/01/2019,17:30
(02/12/2018 20:02)haliliyas Adlı Kullanıcıdan Alıntı: haklısınız copy past yapıyor
isterseniz isimlendirme aşamasında ismin başına
strTo = Application.CurrentProject.Path & "\yedek\" & date() & "_" & Application.CurrentProject.Name

şeklinde yazarsanız tarih ekleyerek kaydeder

Evet oluyor o şekilde. Peki, butona her basışımda ayrı bir dosya olarak kaydettirmek mümkün mü? (tarih bilgisi ile birlikte)Yani klsik prosedüre doğru yol alıyorum...Img-grin



haliliyas

Uzman
65596
Ha.... Ya....
 Belirtilmemiş
 23
 1.033
 30/07/2014
172
 -
 
 Ofis 2019 64 Bit
 Bugün,03:59
strTo = Application.CurrentProject.Path & "\yedek\" & date() & "_" & Application.CurrentProject.Name

yukardaki kodda date yazan yer yerine aşağıdaki "zaman" fonksiyonunu tanımlardanız her yedeğin ömüne tarih ve zaman ekler
___________________________________________________________________________________
zaman = Format(Date, "yyyymmdd") & "_" & Format(Time, "hhmm")
strTo = Application.CurrentProject.Path & "\yedek\" & zaman  & "_" & Application.CurrentProject.Name
___________________________________________________________________________________




Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Çözüldü Saat 17:00Da Otomatik Mail Atsın haziran4 6 188 26/04/2019, 15:52
Son Yorum: ozanakkaya
Çözüldü Access'te Otomatik Sayı Kontrolü dgnlrmehmet 3 147 26/04/2019, 12:17
Son Yorum: dgnlrmehmet
Çözüldü Aynı Tabloda İkitane Otomatik Sayı Alanı Verme respectful 13 650 22/04/2019, 23:36
Son Yorum: haliliyas
Çözüldü Sürekli Formda Yazılacak Verinin Otomatik Olarak Gelmesi mmert06 2 447 19/04/2019, 22:50
Son Yorum: mmert06
Çözüldü Otomatik sayı yıllara göre vermesi Fatih34 16 722 06/04/2019, 22:34
Son Yorum: haliliyas

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2019 MyBB Group.