• DİKKAT

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

Satırlar ve Sayfayı Birlikte Gizlemek/Göstermek

  • Konbuyu başlatan Konbuyu başlatan syndrom
  • Başlangıç tarihi Başlangıç tarihi
Katılım
12 Mart 2008
Mesajlar
5
Excel Vers. ve Dili
Excel 2013 TR-ENG
Excel dosyamda 100 civarı sayfa var. Ana sayfamda A sütununda her bir satırda diğer sayfaların adlarını tutuyorum. Yapmak istediğim; Ana Sayfamda bir satırı GİZLE yada GÖSTER yaptığımda, o satırın A sütunundaki isimde bir sayfa varsa aynı anda sayfa da gizlensin. Aynı şekilde bir sayfayı GİZLE yada GÖSTER yaptığımda da Ana Sayfanın A sütununda eşleşen sayfa adı varsa o satır da birlikte gizlensin. Buton yada onay kutusu kullanmak istemiyorum.

Yardımcı olabilecek veya fikir verebilecek ustalara şimdiden teşekkürlerimi sunarım.
 
Merhaba.
ANASAYFA'nın kod bölümüne aşağıdaki kodları yapıştırıp test eder misiniz?
Gizlenen satırın A sütunundaki adı taşıyan sayfa, ana sayfada bir satırı gizledikten sonra herhangi bir hücreyi fareyle seçince çalışır, diğeri otomatik çalışır.

Ana sayfadaki sayfa isimlerinin 2'nci satırdan itibaren (1'inci satır BAŞLIK) ve boşluksuz olarak listelenmiş olduğu varsayılmıştır.
Kod:
Private Sub Worksheet_Activate()
son = [A65536].End(3).Row
For a = 2 To son

    If Sheets(Cells(a, 1).Value).Visible = True Then
        Rows(a).EntireRow.Hidden = False
    Else
        Rows(a).EntireRow.Hidden = True
End If
Next
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
son = [A65536].End(3).Row
For a = 2 To son

    If Rows(a).EntireRow.Hidden = True Then
        Sheets(Cells(a, 1).Value).Visible = False
    Else
        Sheets(Cells(a, 1).Value).Visible = True
    End If
Next
End Sub
 
Son düzenleme:
Sayın BARAN,

Harika çalışıyor elinize sağlık. Satır numaralarını kendi tabloma göre uyarladım. Ancak, satırdan işlem yaptığımda bir başka hücreye konumlanmadan sayfada işlem yapmamasının nedenini de merak ettim doğrusu.
 
Sayfayı gizlemek için ismine fareyle sağ tıkladığınızda o sayfa aktif hale geliyor ve gizliyorsunuz, aslında ana sayfada o sayfanın adı halen görünür durumda, sayfanın adı gizlendi mi diye ana sayfaya gittiğinizde, Activate kod'u sayfa aktifleştirildiğinde otomatik çalıştığından gizleme işlemini yapıyor. Yani bu kod'u tetikleyen şey sayfanın aktifleştirilmesi.
Sayfada düğme vs. nesne kullanmak istemediğiniz için; satır gizleme olayının ilgili sayfayı gizleme işlemini başlatması için benim bilgim Selection_Change (seçili hücreden başka bir hücrenin seçilmesi) olayından başkasıyla olmayacağını söylüyor (belki bunun dışında da mümkündür ama ben bilemiyorum).

Her iki kod'un ilk satırı olarak aşağıdaki kod satırının,
Kod:
Application.ScreenUpdating = False
en sonuna End Sub'dan önce de aşağıdaki kod satırının olmasında yarar var.
Kod:
Application.ScreenUpdating = True
 
Bilgi verdiğiniz için teşekkür ederim. Koddan başka bir hücreyi seçtirerek denemiştim olmamıştı. demek ki bundanmış.
 
Estağfurullah, iyi günler dilerim.
 
Geri
Üst