• DİKKAT

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

filtrenin kalkması

mcetinkaya65

Altın Üye
Katılım
1 Mart 2011
Mesajlar
490
Excel Vers. ve Dili
2021 türkçe
Kıymetli hocalarımızın yardımı ile filtrelenmiş bir sayfanın bilgilerini sayfa 1 aktarmayı başardım.
Değerli hocam,
Sayafa 2 deki A sütünuna Filtre uygulayıp A1 hücresine çift tıkladığımızda veriler sayfa 1 aktarılıyor.Çok güzel,fakat filtrelenen sayfasının filtresi kaldırıp tümünü seçmeyince, başka sayfalardaki işlemlerde problem çıkıyor.A1 hücresine tıklayıca hem aktarıp aynı tıklamayla filtrenin kalkması veya filtrelenmiş sayfadan başka sayfaya geçilince filtrelemenin kalkması mümkün mü?
Diğer sayfalara geçince filtrelemenin iptal edilmesi daha güzel olur.
Saygılarımla....
 

Ekli dosyalar

Son düzenleme:
Dosyanızdaki ilgili kodlardaki msgbox'tan önce aşağıdaki satırı ekleyin.

Kod:
ActiveSheet.ShowAllData
 
Değerli hocam,
Sayfa koruması yapılan bir sayafanın ,sayfa değişikliğinde filtrelemenin kalkması mümkün değilmi?
(yukarıda bulanan dosyanın, sayfa 2 nin kodları ile beraber çakışmadan çalışacak bir kod)
 
Merhaba,

Tabiki mümkün. Kodu aşağıdaki şekilde değiştirin. Kırmızı bölümler sayfa koruma şifresidir. Kendinize göre değiştiriniz.

Ayrıca korumalı sayfanızda A1 hücresinde filtre olduğu için size çift tıklama izni vermeyecektir. Bu sebeple A1 yerine G1 hücresinde çalışacak şekilde kodu düzenledim.

Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim Satır As Long
    
    If Intersect(Target, Range("[COLOR=blue]G1[/COLOR]")) Is Nothing Then Exit Sub
    ActiveSheet.Unprotect "[COLOR=red]123[/COLOR]"
    Cancel = True
    If Not ActiveSheet.AutoFilter.Filters.Item(1).On Then Exit Sub
    Satır = Cells(Rows.Count, 1).End(3).Row
    If Satır = 1 Then Exit Sub
    
    Say = WorksheetFunction.Subtotal(103, Range("A2:A" & Rows.Count))
    
    With Sheets("Sayfa1")
        .Range("A:N").ClearContents
         Range("A2:N" & Satır).Copy
        .Range("A1").PasteSpecial xlValues
         Application.CutCopyMode = False
    End With
 
    ActiveSheet.ShowAllData
    ActiveSheet.Protect "[COLOR=red]123[/COLOR]", DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
İlginize ve bilginize teşekkürler.
 
Geri
Üst