Koşula Göre Otomatik Sütun Gizleme ve Gösterme Kod Yardımı

Believing

Altın Üye
Katılım
19 Mayıs 2013
Mesajlar
700
Excel Vers. ve Dili
Office Pro 2019 TR 32 Bit
Windows Pro 10 TR 64 Bit
Altın Üyelik Bitiş Tarihi
23-08-2028
Sayın Uzman arkadaşlar,

"F7:AJ7" aralığında boş olan hücreye ait sütunları otomatik olarak gizlemek, her hangi bir değer var ise gizli sütunları göstermek için koda ihtiyacım var. Konuya hakim uzman arkadaşların benim için çok değerli olan yardımlarını rica ediyorum.

Saygılarımla,
Ömer Ali ÜZÜMCÜ
 

yanginci34

Altın Üye
Katılım
6 Temmuz 2010
Mesajlar
1,658
Excel Vers. ve Dili
excel2016
Altın Üyelik Bitiş Tarihi
12-10-2026
Sayfanın kod bölümüne aşağıdaki kodu ekleyerek denermisiniz.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

For sut = 5 To 35
    If Cells(7, sut) <> "" Then
        Columns(sut).EntireColumn.Hidden = False
    Else
        Columns(sut).EntireColumn.Hidden = True
    End If
Next
End Sub
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,070
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Bunu çözmek için hangi durumda kodların çalışması gerektiğini belirlememiz lazım. Örneğin bir düğmeye basıp makroyu mu çalıştıracağız yoksa sayfada herhangi bir değişiklik yaptığımızda mı makro çalışacak? Ayrıca o boş olduğunu söylediğiniz hücrelerdeki veriler nasıl veriler? Formülle başka bir yerden mi geliyor yoksa elle mi giriş yapılıyor? Formülle geliyorsa formül sonucunda boş veri nasıl elde ediliyor? Elle giriliyorsa gizli sütunlara nasıl veri girilmesi düşünülüyor?

En basit çözümü sayın yangıncı vermiş bu arada.
 

Believing

Altın Üye
Katılım
19 Mayıs 2013
Mesajlar
700
Excel Vers. ve Dili
Office Pro 2019 TR 32 Bit
Windows Pro 10 TR 64 Bit
Altın Üyelik Bitiş Tarihi
23-08-2028
Sayın Yusuf bey,

Çok haklısınız, belirttiğiniz detayları örneklendirerek vermeliydim.
Ekteki örnek çalışmada isteklere ait detaylı anlatım mevcut olup, benim için çok kıymetli olan yardımlarınız rica edeiyorum.

Saygılarımla,
Ömer Ali ÜZÜMCÜ

Örnek Çalışma Linki:
https://s4.dosya.tc/server6/mhf0p5/ORNEK_BELIEVING_03072019.rar.html
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,070
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Sorduğunuz sorunun ilk haliyle son hali pek benzemiyor.

İstediğinizi yıl değişince tüm sütunlar görünsün, ay değişince sadece o ay görünsün olarak anlıyorum.

Bunun için comboboxla nasıl yapılır bilemedim. Ancak Comboboxla hiç uğraşmadan C6 ve C7 hücrelerini manuel değiştirerek yapılabilir. Aşağıdaki kodları ilgili sayfanın kod bölümüne yapıştırırsanız C6 ve C7 hücrelerini değiştirdiğinizde istediğiniz gibi gizleme ve gösterme yapılır. C6 ve C7 hücrelerine veri doğrulama uygulayarak listeden ay ve yıl seçimi yaptırabilirsiniz:

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [C6]) Is Nothing Then GoTo 10
Columns("F:NG").EntireColumn.Hidden = False
10:
If Intersect(Target, [C7]) Is Nothing Then Exit Sub
For sut = 7 To 372
    If IsDate(Cells(6, sut)) = True Then
        If Cells(7, sut) = [C7] Then
            Columns(sut).EntireColumn.Hidden = False
        Else
            Columns(sut).EntireColumn.Hidden = True
        End If
    End If
Next
End Sub
 
Üst