• DİKKAT

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

Şartlı Sütun Gizleme

Katılım
23 Ocak 2006
Mesajlar
20


Forumda aradım fakat eski yüklenmiş dosyalar silindiğinden bir çözüm bulamadım. Gruplandır seviyelendir ilede ben kendim çözemedim. Kullandığım tablolar yukarıdaki tablodan çok çok daha fazla sütun içeriyor örnek olması için onu ekledim

Yukarıdaki tabloda listeden "ST1, ST2, ST3" seçeneklerinden birini seçtiğimde bazı sütunlar gizlensin istiyorum. TÜMÜ seçeneğini seçtiğimde tüm sütunlar tekrar gözüksün

Örneğin
ST1 i seçtiğimde F,H,K,L,M sütunları gizlensin
ST2 yi seçtiğimde E,G,H,L,M,N sütunları gizlensin
ST3 ü seçtiğimde E,F,H,I,J,M,N sütunları gizlensin

Teşekkürederim
İyi çalışmalar
 
Merhaba,

Çalışma sayfasının kod bölümüne kopyalayınız.

Dosya eklemediğiniz için seçin hücresini göremedim. Seçim hücresi B2 olarak yazılmıştır, kendinize göre değiştirirsiniz..

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [[COLOR=red]B2[/COLOR]]) Is Nothing Then Exit Sub
    If Target = "TÜMÜ" Then
        Cells.EntireColumn.Hidden = False
    ElseIf Target = "ST1" Then
        Range("F:F,H:H,K:M").EntireColumn.Hidden = True
    ElseIf Target = "ST2" Then
        Range("E:E,G:H,L:N").EntireColumn.Hidden = True
    ElseIf Target = "ST3" Then
        Range("E:F,H:J,M:N").EntireColumn.Hidden = True
    End If
End Sub

.
 
Bu kadar hızlı yardım ettiğiniz için ayrıca çok teşekkür ederim
İyi Çalışmalar
 
ömer bey sizin yazmış olduğunuz kod benim işimi görecek gibi ancak tam uyarlayamadım yardımcı olabilirmisiniz
 
iyi çalışmalar tümü yazınca gizli satırları göstermiyor
 
ömer bey benim yapmak istediğim b sütununa farklı bilgiler girim on agöre bazı sütunları gizletmek istiyorum bunu sizin kod yapıyor ancak şöyle bir durum var kodda tümü var tümü yapmadan başka bir veri yazınca yanlış gizleme yapıyor bunu şu şekilde çözebirmiyiz diyelimki a yazdık sütunu gizledi b yazdık gizli yerleri gösterip sonra b ye göre gizlemesi gerekenleri gizlese

özet olarak kodyukarıdaki kodu uyarladım bilgiyi yazınca gizliyor sonra başka bir bilgi yazınca gizlemede hata oluyor önce tümü demek gerekiyor bu tümü demeden ikinci bir bilgiyi yazınca onun sütunlarını gizlese
 
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B6:b10000]) Is Nothing Then Exit Sub

If Target = "TÜMÜ" Then
Cells.EntireColumn.Hidden = False

ElseIf Target = "ALIŞ" Then
Range("F:H,P:U").EntireColumn.Hidden = True

ElseIf Target = "GİDER" Then
Range("K:O").EntireColumn.Hidden = True

ElseIf Target = "SATIŞ" Then
Range("E:E,P:U").EntireColumn.Hidden = True

ElseIf Target = "GELİR" Then
Range("E:E,K:O").EntireColumn.Hidden = True

End If
End Sub

düzenlediğim kod bu
 
Merhaba,

Çalışma sayfasının kod bölümüne kopyalayınız.

Dosya eklemediğiniz için seçin hücresini göremedim. Seçim hücresi B2 olarak yazılmıştır, kendinize göre değiştirirsiniz..

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [[COLOR=red]B2[/COLOR]]) Is Nothing Then Exit Sub
    If Target = "TÜMÜ" Then
        Cells.EntireColumn.Hidden = False
    ElseIf Target = "ST1" Then
        Range("F:F,H:H,K:M").EntireColumn.Hidden = True
    ElseIf Target = "ST2" Then
        Range("E:E,G:H,L:N").EntireColumn.Hidden = True
    ElseIf Target = "ST3" Then
        Range("E:F,H:J,M:N").EntireColumn.Hidden = True
    End If
End Sub

.

ARKADAŞLAR BEN KODU BİRAZ DAHA GELİŞTİRDİM VE MAKRO OLARAK BUTONA ATAMA YAPTIRDIM. BUDA İSTEDİĞİMİZ ZAMAN SÜTUNLARI GİZLEMEMİZİ İSTEDİĞİMİZ ZAMAN GİZLEMEMEMİZİ SAĞLAMAKTADIR. KOD ŞÖYLEDİR.

NOT: BEN A2 0 (SIFIR)DAN FARKLI BİR DEĞER İSE GİZLETTİRDİM. SİZ BU KISMI İSTEDİĞİNİZ HÜCREYE BAĞIMLI YAPABİLİRSİNİZ.

Kod:
SUB SUTUN_GIZLE()
    If [A2] = 0 Then
         Range("F:H").EntireColumn.Hidden = TRUE
    Else Range("F:H").EntireColumn.Hidden = FALSE
    End If
End Sub
 
İyi akşamlar,

Hücrenin boş olmasına karşın alıcak önlem ile kodlara aşaşğıdaki gibi ek yaptım.
SUB SUTUN_GIZLE()
If [A2] = "" Then
MsgBox ("[A2] hücresi boş olamaz!"), vbExclamation, "Uyarı"
Exit Sub
Else
If [A2] = 0 Then
Range("F:H").EntireColumn.Hidden = True
Else: Range("F:H").EntireColumn.Hidden = False
End If
End If
End Sub
 
Geri
Üst