Tarih Kriterine ve Satır Değerine Göre Sütun Gizleme

cavanoos

Altın Üye
Katılım
17 Aralık 2008
Mesajlar
723
Excel Vers. ve Dili
Microsoft 365
Altın Üyelik Bitiş Tarihi
11-01-2026
Merhaba;

Ekteki örnek dosyamda B1 hücresine girdiğim tarih değerine göre;

a) 7. satırdan itibaren sadece ilgili tarih satırı kalmalı
b) Sütun olarak da seçili tarihte EVET yazısı olmayan sütunlar kalmalı

Bu işlem sonucunda ilgili dosyada;

a) 7. ve 20. satırlar gizlenecek ve 22. satır ile 100. satır arası gizlenmiş olacak.
b) B, E, F, H, J ve K sütunları gizlenmiş olacak.

Yardımcı olabilir misiniz ?
 

Ekli dosyalar

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,334
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
Yanlış dosyayı yüklemiş olabilir misiniz?
 

cavanoos

Altın Üye
Katılım
17 Aralık 2008
Mesajlar
723
Excel Vers. ve Dili
Microsoft 365
Altın Üyelik Bitiş Tarihi
11-01-2026
Evet, yanlış dosya, tekrar yükledim.
 

Ekli dosyalar

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,334
Excel Vers. ve Dili
2007 Türkçe
b) Sütun olarak da seçili tarihte EVET yazısı olmayan sütunlar kalmalı

b) B, E, F, H, J ve K sütunları gizlenmiş olacak.
B seçenekleri birbirinin zıddı gibi hangisi gizlenecek Evet yazan mı, yazmayan mı?
 

cavanoos

Altın Üye
Katılım
17 Aralık 2008
Mesajlar
723
Excel Vers. ve Dili
Microsoft 365
Altın Üyelik Bitiş Tarihi
11-01-2026
Ömer Bey;

İlk defa bir konuda bu kadar fazla saçmaladım. Önce hatalı dosya, şimdi de bu. Özür dilerim.

Evet yazan sütun gizlenecek
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,334
Excel Vers. ve Dili
2007 Türkçe
Aşağıdaki kodu ilgili sayfanın kod bölümüne kopyalayınız.
Ancak B sütununda EVET yazdığı durumda tarih girdiğiniz hücre de gizlenecektir.
Bilginize...
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B1")) Is Nothing Then
    If Range("B1") = "" Then
        With Range("B7:K100")
            .EntireColumn.Hidden = False
            .EntireRow.Hidden = False
        End With
    Else
        Dim trh As Date
        Dim a As Byte, b As Byte
        trh = Range("B1").Value
        Application.ScreenUpdating = False
        With Range("B7:K100")
            .EntireColumn.Hidden = True
            .EntireRow.Hidden = True
        End With
        For a = 7 To 100
            If Cells(a, "A").Value Like trh Then
                Cells(a, "A").EntireRow.Hidden = False
                For b = 1 To 10
                    If Cells(a, b) <> "EVET" Then
                        Cells(a, b).EntireColumn.Hidden = False
                    End If
                Next
            End If
        Next
        Application.ScreenUpdating = True
    End If
End If
End Sub
 

cavanoos

Altın Üye
Katılım
17 Aralık 2008
Mesajlar
723
Excel Vers. ve Dili
Microsoft 365
Altın Üyelik Bitiş Tarihi
11-01-2026
Elinize sağlık, süper olmuş :)
 
Üst