• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Çalışma kitabını makro ile yedekleme

Katılım
3 Kasım 2007
Mesajlar
84
Excel Vers. ve Dili
xp türkçe
selam arkadaşlar
çalışma kitabı yedekleme ile ilgili bir sorum olacak.
bir hücreye girilen metni alarak çalışma kitabını yedekleme yapıyorum fakat beni istediğim

userform üzerindeki bir CommandButton tuşuna bastığımda
çalışma kitabını yedeklerken dosya ismini userform üzerindeki textbox tan alabilirmi
yani listbox tan seçim yaptığımda textbox sa gelen metni çalışma kitabı ismi olarak kullanabilirmi.
ve "burası önemli" sadece listbox tan seçtiğim kaydı yedekleyecek.

dosyayı ekledim.

userform2 üzerindeki siparişi yedekle butonuna yukarıda istediğim kodlar eklenecek.
ilgilenen arkadaşlara şimdiden teşekkür ediyorum.
 
Son düzenleme:
Olabilir.Dosyanızı eklerseniz yanıt bulmanız kolaylaşır.
 
Aşağıdaki şekilde deneyin.
Kod:
Private Sub CommandButton8_Click()
     ActiveWorkbook.SaveAs "D:\yedekler\" & Replace(TextBox27.Text, "/", "-")
End Sub

Not: Dosya ismi olarak "\" şeklindeki karakterler kullanılmadığından bu karakter yerine "-" karakterini kullandım.
 
Aşağıdaki şekilde deneyin.
Kod:
Private Sub CommandButton8_Click()
     ActiveWorkbook.SaveAs "D:\yedekler\" & Replace(TextBox27.Text, "/", "-")
End Sub

Not: Dosya ismi olarak "\" şeklindeki karakterler kullanılmadığından bu karakter yerine "-" karakterini kullandım.

SN HAMİTCAN teşekkür ederim
kod işime yaradı userform daki textbox tan isim alarak yedekleme yapıyor.
fakat benim istsdigim listbox taki sadece seçili kayıtları yedeklemesi mümkümü?
bu mümkünse tam süper olacak.
 
Çalıştığınız kod zaten bu şekilde çalışıyor.Listbox içinden seçilen kayıt TextBox içine geliyor.Buradaki metinde sizin dosya isminiz oluyor.
 
SN hamitcan
ben soruyu daha ayrıntılı sorayım
userform2 üzerindeki textbox ve combobox lara veri girerek aktif sayfaya (sayfa3) kayıt yapıyorum. ve bu kayıtları listbox tan kontrol edebiliyorum.
listbox tan seçtiğim kayıt (örneğin a2:az2) aralığında veriler userform2 üzerinde ilgili box lara geliyor şiparişi yedekle butonuna bastığımda textbox tan isim alarak tüm çalışma kitabını yedekliyor.
Benim istediğim ise ilgili textbox tan isim alarak userform2 üzerinde box larda bulunan (örnek a2:az2) aralığındaki verileri yedeklesin tüm çalışma kitabını değil
Açıkçası ben kod yazmayı bilmiyorum excelforumu takip ederek bu dokümanı hazırladım yani belkide istediğim çok uçuk bişeydir ama neden olmasın formdaki arkadaşların örnek dosyaları inceledim yani yok yok. bende bu sayede bilgi ve becerimi arttırmaya gayret gösteriyorum umarım bunları yakın zamanda kendim yaparım bu sayede yeni başlayan arkadaşlara katkıda bulunabilirim.

hamitcan sen senin verdigin kodlar doğru ben konu başlıgını yanlış açtım
 
Son düzenleme:
Önceki kodu aşağıdaki ile değiştirin.
Kod:
Private Sub CommandButton8_Click()
Application.DisplayAlerts = False
    Workbooks.Add
    With ActiveWorkbook
    For Each sh In .Sheets
        If sh.Name = "Sayfa3" Then sh.Delete
    Next
    Workbooks("sim.xls").Sheets("Sayfa3").Copy after:=.Sheets(Sheets.Count)
    .SaveAs "D:\yedekler\" & Replace(TextBox27.Text, "/", "-")
    .Close
    End With
Application.DisplayAlerts = True
End Sub
 
Önceki kodu aşağıdaki ile değiştirin.
Kod:
Private Sub CommandButton8_Click()
Application.DisplayAlerts = False
    Workbooks.Add
    With ActiveWorkbook
    For Each sh In .Sheets
        If sh.Name = "Sayfa3" Then sh.Delete
    Next
    Workbooks("sim.xls").Sheets("Sayfa3").Copy after:=.Sheets(Sheets.Count)
    .SaveAs "D:\yedekler\" & Replace(TextBox27.Text, "/", "-")
    .Close
    End With
Application.DisplayAlerts = True
End Sub

Sn hamitcan teşekkür ederim
öncekinden çok daha iyi
bu kodlar sayfa3 ü yedekliyor
fakat ben ısrarla tekrar edecegim userform2 üzerindeki listbox tan seçtiğim kaydı. diyelim sayfadaki ilk kaydı seçtim sayfa ("sayfa3!a2:az2") sadece seçtiğim bu aralığı yedeklesin.
 
Aşağıdaki şekilde dener misiniz?
Kod:
Private Sub CommandButton8_Click()
Application.DisplayAlerts = False
    Workbooks.Add
    Set s1 = ActiveWorkbook
    With s1
        .Sheets(1).Rows(1) = Workbooks("sim.xls").Sheets("Sayfa3").Rows(ListBox1.ListIndex + 2).Value
        .SaveAs "D:\yedekler\" & Replace(TextBox27.Text, "/", "-")
        .Close
    End With
Application.DisplayAlerts = True
End Sub
 
sn hamitcan çok teşekkür ederim
tam istediğim gibi allah kolaylık versin
 
Geri
Üst