Kalıp dosya uygulaması

Katılım
4 Ağustos 2008
Mesajlar
117
Excel Vers. ve Dili
Türkçe
Merhaba;

Excel çalışmamda userform üzerinden yeni firma dediğimde örneğin C:\Veriler\boş.xls dosyasını açsın. Sonra buraya bilgileri girdiğimde bu dosya bozulmadan C2 Hücresindeki isimle C:\Veriler\ için kaydetsin. Burada boş.xls dosyası başlıkları bulunan boş bir tablo. Bu tablo hep boş kalmalı yani her yeni dediğimde bu boş tabloyu yine karşıma getirsin. Veri girişi yaptığımda yani C2 Hücresine veri girişi yaptığımda bunu dosyaya kaydetmesini istiyorum. Bir türlü yapamadım. Yardımlarınız için şimdiden Teşekkür ederim...
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,740
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Bu işlem için bir adet şablon dosya oluşturmanız yeterli olacaktır. Şablon olarak kullanacağınız dosyanızı başlılarını ve varsa diğer biçimlendirmelerini yaptıktan sonra kayıt ederken "Kayıt Türü" bölümünden "Şablon (*.xlt)" seçeneğini seçip dosyanızın isminide "Boş.xlt" olarak verip "C:\Veriler\" klasörüne kaydedin.

Daha sonra ekteki örnek dosyayı indirin ve form üzerindeki butona tıklayın. C2 hücresindeki isimle dosyalarınız "C:\Veriler\" klasörü altına otomatik olarak kayıt edilecektir.
 

Ekli dosyalar

Katılım
4 Ağustos 2008
Mesajlar
117
Excel Vers. ve Dili
Türkçe
Koray Bey;

Verdiğiniz dosyayı inceledim. Bir sorunum oldu ben bunu kalıp dosyasının BeforeClose olayına yansıtmam gerekiyor. Şöyle söyleyeyim ben buradan kalıp dosyayı açtım sonra veri girişini yaptım kapatırken C2 hücresindeki veri ile C:\Veriler klasörüne kaydedecek WorkClose olayında olduğu için bunu kaydettiğimiz .xls dosyasında da oluyor. O kaydettiğimiz dosyayı açtığımda tekrar kapatırken aynı klasör var kaydedeyim mi diye soruyor benim istediğim yoksa kaydetsin varsa üzerine kaydetsin(değiştirsin)

Olup olmadığını
Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim evn As Object, yol As String, dosyam As String
    Set evn = CreateObject("scripting.filesystemobject")
        yol = "c:\Veriler\"
        dosyam = Worksheets("GİRİŞ").Range("C2") & ".xls"
    If evn.FileExists(yol & dosyam) Then
        evn.deletefile (yol & dosyam)
        ThisWorkbook.SaveAs Filename:=yol & dosyam, FileFormat:= _
        xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
            Exit Sub
    End If
        ThisWorkbook.SaveAs Filename:=yol & dosyam, FileFormat:= _
        xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
End Sub
Tabi bu olmuyor evn.deletefile (yol & dosyam) bununla dosya aktif ise silinemiyor hatası veriyor hiçbir şekilde çözüm bulamadım Yardımcı olursanız sevinirim. TeşekkürLer..
 
Üst