Soru Sayfa Kopyalama / Yedekleme (Sadece Değerleri)

Katılım
26 Nisan 2021
Mesajlar
178
Excel Vers. ve Dili
TR 2021
Altın Üyelik Bitiş Tarihi
27-04-2022
Sayın hocalarım,

Dim ad As String
ad = ActiveSheet.Name & "_" & Format(Date, "dd.mm.yyyy")
If varmi(ad) Then
MsgBox "Aynı Kayıt Var.!", vbCritical, "Mükerrer Kayıt"
Exit Sub
End If
ActiveSheet.Copy After:=ActiveSheet
ActiveSheet.Name = ad
MsgBox "Kaydınız Tarihiyle Oluşturuldu.!", 15, "Başarılı Kayıt"

bu şekildeki kod ile sayfayı kopyalıyor, yedekliyorum.
Talebim kopyalama, yedeklemede sayfadaki sadece değerleri
kopyalasın, butonları, renkleri v.s. kopyalamasın. Saygılarımla.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Buradaki sayfayı ActiveSheet.Name & "_" & Format(Date, "dd.mm.yyyy") adını vererek kopyalamaktaki amaç yedekleme için mi?
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Deneyiniz.
Kod:
Sub Kaydet()

    Dim d As String, S1 As Worksheet, ad As String
    
    Set S1 = Sheets(ActiveSheet.Name)
    ad = S1.Name & "_" & Format(Now, "dd.mm.yy_hh.nn")
    d = ThisWorkbook.Path & "\" & ad & ".xlsx"
    
    Application.ScreenUpdating = False
    Sheets.Add.Name = ad
    
    S1.Cells.Copy
    Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
    Range("A1").Select
    Application.CutCopyMode = False
    
    ActiveSheet.Copy
    With ActiveWorkbook
        .SaveAs Filename:=d
        .Close
    End With
    
    Sheets(ad).Delete
    Application.ScreenUpdating = True
    
End Sub
 
Katılım
26 Nisan 2021
Mesajlar
178
Excel Vers. ve Dili
TR 2021
Altın Üyelik Bitiş Tarihi
27-04-2022
Hocam çok teşekkür ederim. Ben tabi tam anlatamadım.
Hocam sayfa içeriğinde bulunan verileri alacak, diğer tasarımla alakalı kısımları, butonları v.s.
almayacak, ve aynı çalışma kitabında sekme olarak kaydedecek.
 
Katılım
26 Nisan 2021
Mesajlar
178
Excel Vers. ve Dili
TR 2021
Altın Üyelik Bitiş Tarihi
27-04-2022
Bu hususta bilgi verilebilecek ustalarım size zahmet olacak.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Ben sayfayı farklı klasöre yedekleme yapacağınız diye anlamıştım.
Kodların çalışacağı sayfa.. ve kodlar çalıştıktan sonra oluşacak sayfanın örnekleri olan bir dosya ekleyip ne yapılması gerektiğini detaylı açıklayınız.
 
Katılım
26 Nisan 2021
Mesajlar
178
Excel Vers. ve Dili
TR 2021
Altın Üyelik Bitiş Tarihi
27-04-2022
Dim ad As String
ad = ActiveSheet.Name & "_" & Format(Date, "dd.mm.yyyy")
If varmi(ad) Then
MsgBox "Aynı Kayıt Var.!", vbCritical, "Mükerrer Kayıt"
Exit Sub
End If
ActiveSheet.Copy After:=ActiveSheet
ActiveSheet.Name = ad
MsgBox "Kaydınız Tarihiyle Oluşturuldu.!", 15, "Başarılı Kayıt"

Hocam yukarıdaki kodlarla örneğin (İz_23.06.2021) adını vererek YENİ BİR SEKME oluşturarak bir anlamda yedekliyorum.
Yedeklediğim sayfa diğer sayfa ile birebir aynı. Talep ettiğim şudur;

Yedeklenen sayfada butonlar, hücre renkleri vesair olmasın. Sadece verileri, değerleri alsın.

Saygılarımla.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Deneyiniz.
Kod:
Dim ad As String, S1 As Worksheet
ad = ActiveSheet.Name & "_" & Format(Date, "dd.mm.yyyy")
If varmi(ad) Then
MsgBox "Aynı Kayıt Var.!", vbCritical, "Mükerrer Kayıt"
Exit Sub
End If

Set S1 = Sheets(ActiveSheet.Name)
Sheets.Add.Name = ad
    
S1.Cells.Copy
Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
Range("A1").Select
Application.CutCopyMode = False

MsgBox "Kaydınız Tarihiyle Oluşturuldu.!", 15, "Başarılı Kayıt"
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Deneyiniz:

PHP:
Sub ekle()
Dim ad As String
eski = ActiveSheet.Name

ad = ActiveSheet.Name & "_" & Format(Date, "dd.mm.yyyy")
For i = 1 To Sheets.Count
    If Sheets(i).Name = ad Then
        MsgBox "Aynı Kayıt Var.!", vbCritical, "Mükerrer Kayıt"
        Exit Sub
    End If
Next
Sheets.Add
ActiveSheet.Name = ad
Sheets(eski).Cells.Copy
ActiveSheet.[A1].PasteSpecial Paste:=xlValues

MsgBox "Kaydınız Tarihiyle Oluşturuldu.!", 15, "Başarılı Kayıt"
End Sub
 
Katılım
26 Nisan 2021
Mesajlar
178
Excel Vers. ve Dili
TR 2021
Altın Üyelik Bitiş Tarihi
27-04-2022
Saygıdeğer Hocalarım,
İlginize çok teşekkür ederim. Deneyip bilgi vereceğim. ALLAH razı olsun.
 
Katılım
26 Nisan 2021
Mesajlar
178
Excel Vers. ve Dili
TR 2021
Altın Üyelik Bitiş Tarihi
27-04-2022
Hocalarım son olarak yeni sekmeyi en sola oluşturabilirmi ?
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Sheets.Add kısmını

Sheets.Add before:=Sheets(1)

olarak değiştirin.

En son için ise

Sheets.Add After:=Sheets(Sheets.Count)

Olarak kullanabilirsiniz.
 
Katılım
26 Nisan 2021
Mesajlar
178
Excel Vers. ve Dili
TR 2021
Altın Üyelik Bitiş Tarihi
27-04-2022
Çok teşekkür ederim. Hocalarım ellerinize sağlık. Harika oldu.
 
Üst