kurumlar için bilgisayar dosyaları arşiv programı

1 2 3
06/01/2012, 15:04

ondercesmeci

Herkese merhaba;
Arkadaşlar hazırladığım programın hemen bitip örnekler bölümüne göndereceğimi düşünürken işin içinden çıkamadığım bir hal aldı.
ŞİFRE:0
Programın amacı : ağ üzerindeki bir bilgisayarda kurum ile ilgili bilgisayar dosyalarını (word, excel, resim, liste, v.b.) salt okunur olarak arşivlemek. program eğer klasör yok ise otomatik açıyor.
1. Problem : frmekle formunda önce kopyalanacak dosyayı seçiyorum ve EKLE butonuna bastığımda eğer aynı adda dosya var ise ikaz verip eski dosyayı yenisi ile değiştirmesi gerekiyor ama aşağıdaki kodda hata veriyor.
 Sub arsivleme()
If MsgBox("Dosya Arşivlenecek.. Emin misiniz?", vbYesNo) = vbYes Then

Dim Trz
Set Trz = CreateObject("Scripting.FileSystemObject")
Trz.CopyFile asıldosya, kopyadosya
Me.arsivtarihi = Now
Me.olusturanpersonelid = Forms![frmgiris]![personelid]
Me.arsivyol = kopyadosya
SetAttr Me.arsivyol, vbReadOnly
MsgBox "Dosya arşivlendi."

End If
End Sub

2. Problem : Silme işlemini başaramadım. sil tuşlarında hata veriyor.
ilginize ve bilginize şimdiden teşekkür ederim.
Ek Dosyalar

06/01/2012, 16:48

alpeki99

If MsgBox("Dosya Arşivlenecek.. Emin misiniz?", vbYesNo) = vbYes Then

Dim Krz
Set Krz = CreateObject("Scripting.FileSystemObject")
Krz.CopyFile asıldosya, kopyadosya
Me.arsivtarihi = Now
Me.olusturanpersonelid = Forms![frmgiris]![personelid]
Me.arsivyol = kopyadosya
SetAttr Me.arsivyol, vbReadOnly
MsgBox "Dosya arşivlendi."

asıldosya isimli değişkenin değeri olmadığından hata veriyor. Bu değeride form üzerindeki bir metin kutusundan vermişsiniz ancak Null değer içerdiğinden hata veriyor.

NOT : Vba kodlarınız içinde dosyaların adresi için \\Yesil1\arsiv\DOSYALAMA şeklinde yol belirtmişsiniz. Bu tarz kodlar programlama teknikleri için uygun değil. En iyi çözüm bu adresi VT içinde bir yerde tutmak ve tüm programda geçerli olacak sabit bir değişkene atamak ve adreste o değişkeni kullanmak olacaktır.
06/01/2012, 23:43

Kur@l

Hocam kodlar çok güzel olmuş.
07/01/2012, 00:12

alpeki99

Ünlü Lidya kralı Krezus'u anmak istedim
07/01/2012, 00:18

Kur@l

Bu krezüs enteresan birisi demek ki isteyenler okusunlar...
07/01/2012, 10:48

ondercesmeci

sn.alpeki99
Programın bir kaç gün önce o problemleri yoktu. eski dosyayı değiştiriyordu. DosyaYolu'nuda VT ye bağladım, \\Yesil1\arsiv\DOSYALAMA yolunu da VT ye bağladım. ama çözemedim. program da kullandığım kodlar gördüğünüz gibi pek çok arkadaşın o konu ile ilgili gönderdiği kodların aynısı. onların programlarında çalışmakta ama bende hata vermekte. çok basit ve küçük bir hatadan kaynaklandığı kanısındayım.
İlginize ve bilginize teşekkür ederim.
1 2 3