• DİKKAT

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

Geri Al düğmesi hk.

Mdemir63

Altın Üye
Katılım
7 Temmuz 2006
Mesajlar
2,992
Excel Vers. ve Dili
Ofis2010 32Bit Türkçe
Selamlar,
Arkadaşlar ekteki dosyamda istediğim alanı düğme ile temizleyebiliyorum. Ancak temizlediğim alanı tekrar eski haline yani geri al düğmesiyle geri getirmek istiyorum. Nasıl yapabilirim?

Saygılar
 
Silme olayından önce kodunuzun önüne kopyalama kodu yerleştirirseniz, temel olarak halledilebilir. Ama karmaşık işlemler için, -Clipboard kullanımı gibi- biraz daha geliştirmek gerekebilir.

Ekteki dosyayı inceleyiniz.
 
Hocam iyi geceler,
İlginize çok teşekkürler ama neden başka bir sayfaya aktarıyor sonra geri al dediğimizde tekrar önceki haline döndürüyor. Evet belki istenileni yapıyor ama şöyle düşünelim örneğin ; Word de yazı yazıyoruz yanlış yaptığımızda nasıl geri al düğmesiyle geriye döndürüyorsak aynı o şekilde yapma şansımız nedir?
Saygılar
 
Alternatif olarak aşağıdaki kodlarıda deneyebilirsiniz. Makro ile sildiğiniz verileri normal geri al özelliği ile geri getiremezsiniz, yapmanız gereken ikinci bir makro ile ilk makrodaki işlemin tersini yaptırmaktır.

Kod:
Dim hucre As Range
Dim deger(100000)
 
Sub Sil()
For Each hucre In [a2:d500]
c = c + 1
deger(c) = hucre
Next
Range("A2:D500").ClearContents
End Sub
 
Sub gerial()
For Each hucre In [a2:d500]
c = c + 1
hucre = deger(c)
Next
End Sub
 
Levent Hocam'a katılıyorum. Geri al işlemi, bir tersine çevirme işlemidir. Eper bir şeyi geri döndürmek istiyorsanız da, önceki halini hatırlamalısınız.

Excel'in kendi Geri Al özelliğini incelediğinizde, sadece son 16 eylemi geri aldığını görürsünüz.

Standart "Geri Al" işlemi, aynı makro kaydı yapmak gibi birşey .. Yaptığınız tüm değişikliklerin (eylemlerin) kaydını bir yerde tutmalısınız ve sonra da gerektiğinde bu değişiklikleri (eylemleri) nötralize etmelisiniz.

Bunu, tabi ki makrolarla sadece kopyalama olarak yapabiliyoruz. Çünkü bir hücrenin taşıdığı o kadar çok özellik var ki .. Hepsini tam olarak takip etmek sanırım Excel'i yazanların uzmanlık konusu..

Ama burada da gördüğünüz gibi belirli ve bildiğimiz eylemleri, kısmen geri alabiliyoruz.
 
Selamlar,

Levent Hocam
fpc Hocam
ilginizden ve açıklayıcı bilgilerinizden dolayı çok teşekkürler

Saygılar
 
Hocam unutmuşum A2:500 aralığı temizleniyor ve geri alınıyor. Bu aralığa ilave yapma şansımız var mı? Yani (A2:500, R2:AE500) gibi

Saygılar
 
Son düzenleme:
geri alma işlemi yapılmadığı için makroya yanlışlıkla basıldığında işlemi yapmak istiyor musnuz gibi bir soru sorsa hayır dediğimde işlemi yapmayacak evet dersem yapacak
bunu nasıl yaparız
 
Aşağıdaki yapıyı kullanabilirsiniz.

Kod:
Sub TEST()
    Dim Onay As Byte
    
    Onay = MsgBox("İşleme başlamak istiyor musunuz?", vbExclamation + vbYesNo + vbDefaultButton2, "Dikkat !")
    
    If Onay = vbNo Then Exit Sub
    
    Rem Çalışmasını istediğiniz kodlar...
    Rem Çalışmasını istediğiniz kodlar...
    Rem Çalışmasını istediğiniz kodlar...
    Rem Çalışmasını istediğiniz kodlar...
    Rem Çalışmasını istediğiniz kodlar...
End Sub
 
Geri
Üst