Skip to main content

Kutools for Office — Bir Paket. Beş Araç. Daha Fazla İş Yapın.

Excel'de kullanıcı girişine göre sütunları gerçek zamanlı olarak nasıl gizlersiniz?

Author Xiaoyang Last modified

Excel'de sütunları gizlemek yaygın bir görev olabilir, ancak belirli giriş değerlerine göre sütunları otomatik olarak gizlemeyi denediniz mi? Örneğin, bir hücreye “AA” metnini girdiğimde A sütunu gizlenir; “BB” girdiğimde B ve C sütunları gizlenir; “CC” girdiğimde D ve E sütunları gizlenir; “DD” girdiğimde F sütunu gizlenir, aşağıdaki demoda gösterildiği gibi. Bu makale, Excel'de bunu çözmek için bir VBA kodu sağlayacaktır.

Kullanıcı girişine göre sütunları gerçek zamanlı olarak gizlemek veya gizlemeyi kaldırmak için VBA kodu kullanın

Kullanıcı girişine göre belirli sütunları gizlemek veya gizlemeyi kaldırmak için VBA kodu kullanın


Kullanıcı girişine göre sütunları gerçek zamanlı olarak gizlemek veya gizlemeyi kaldırmak için VBA kodu kullanın

Giriş değerlerine göre belirli sütunları gerçek zamanlı olarak gizlemek için lütfen aşağıdaki VBA kodunu uygulayın:

1. Sütunları gizlemek istediğiniz çalışma sayfasında, sayfa sekmesine sağ tıklayın ve ardından bağlam menüsünden "Kodu Görüntüle" seçeneğini tıklayın, ekran görüntüsüne bakınız.

A screenshot showing how to open the Visual Basic for Applications window in Excel by right-clicking the sheet tab

2. Açılan "Microsoft Visual Basic for Applications" penceresinde, aşağıdaki VBA kodunu "Sayfa (Kod)" penceresine kopyalayıp yapıştırın.

VBA kodu: Kullanıcı girişine göre sütunları gerçek zamanlı olarak gizleme

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby ExtendOffice
xcell = Range("K1").Value
Select Case xcell
Case "AA": Columns("A").EntireColumn.Hidden = False
Columns("A").EntireColumn.Hidden = True
Case "BB": Columns("B:C").EntireColumn.Hidden = False
Columns("B:C").EntireColumn.Hidden = True
Case "CC": Columns("D:E").EntireColumn.Hidden = False
Columns("D:E").EntireColumn.Hidden = True
Case "DD": Columns("F").EntireColumn.Hidden = False
Columns("F").EntireColumn.Hidden = True
Case Else
Columns("A:G").EntireColumn.Hidden = False
End Select
End Sub
Not: Yukarıdaki kodda, "K1" belirli metni girdiğiniz hücredir. Metni ve sütun adlarını ihtiyaçlarınıza uygun şekilde ayarlamalısınız. Ayrıca, aşağıdaki betikleri ekleyerek diğer yeni kriterleri de ekleyebilirsiniz:
  • Case "AA": Columns("A").EntireColumn.Hidden = False
  • Columns("A").EntireColumn.Hidden = True

A screenshot of the VBA code window in Excel with code pasted to hide columns based on user input

3. Ardından, kod penceresini kapatın. Şimdi, K1 hücresine “AA” yazdığınızda ve "Enter" tuşuna bastığınızda, A sütunu gizlenir; “BB” yazdığınızda ve "Enter" tuşuna bastığınızda, B ve C sütunları gizlenir, ve bu şekilde devam eder. Başka bir değer girerseniz veya içeriği silerseniz, gizli sütunlar hemen görüntülenecektir, aşağıdaki demoya bakınız:


Kullanıcı girişine göre belirli sütunları gizlemek veya gizlemeyi kaldırmak için VBA kodu kullanın

Bu örnekte, girilen bir ürün adına göre bir veri aralığını filtrelemeye gideceğim. “Hoodie” yazdığımda, yalnızca Hoodie bilgileri görüntülenir ve diğer sütunlar hemen gizlenir; ve “All” yazdığımda, aşağıdaki demoda gösterildiği gibi tüm sütunlar görüntülenecektir:

1. Sütunları gizlemek istediğiniz çalışma sayfasında, sayfa sekmesine sağ tıklayın ve ardından bağlam menüsünden "Kodu Görüntüle" seçeneğini tıklayın, ekran görüntüsüne bakınız:

A screenshot showing how to open the Visual Basic for Applications window in Excel by right-clicking the sheet tab

2. Açılan "Microsoft Visual Basic for Applications" penceresinde, aşağıdaki VBA kodunu "Sayfa (Kod)" penceresine kopyalayıp yapıştırın.

VBA kodu: Kullanıcı girişine göre veriyi filtrelemek için sütunları gizleme veya gizlemeyi kaldırma

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby ExtendOffice
    Dim x As Variant, y As String
     If Target.Address = "$K$1" Then
        y = Target.Value
        With Range("B1:H1")
            Application.ScreenUpdating = False
            .EntireColumn.Hidden = (y <> "All")
            If y <> "All" Then
                For Each x In .Cells
                    If x = y Then x.EntireColumn.Hidden = False
                Next
            End If
            Application.ScreenUpdating = True
        End With
    End If
End Sub
Not: Yukarıdaki kodda, "K1" belirli metni girdiğiniz hücredir, "B1:H1" ise filtrelemek istediğiniz ürün adlarını içeren satır başlıklarıdır.

3. Ardından, kod penceresini kapatın. Şimdi, ürün adını K1 hücresine girerseniz, yalnızca ilgili sütunlar görüntülenecek, diğerleri gizlenecektir; ve eğer “All” metnini girerseniz, aşağıdaki demoda gösterildiği gibi tüm sütunlar görünecektir:

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veri analizinde devrim yaratın – Akıllı Yürütme | Kod Oluştur | Özel Formüller Oluştur | Verileri Analiz Et ve Grafikler Oluştur | Kutools Fonksiyonlarını Çağır
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle | Boş Satırları Sil | Sütunları veya Hücreleri Veriyi Kaybetmeden Birleştir | Formül olmadan Yuvarla...
Süper ARA: Çoklu Kriter VLookup | Çoklu Değer VLookup | Çoklu sayfa araması | Bulanık Eşleme....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluştur | Bağımlı Açılır Liste | Çoklu seçimli Açılır Liste....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekle | Sütunları Taşı | Gizli Sütunların Görünürlük Durumunu Değiştir | Aralıkları & Sütunları Karşılaştır...
Öne Çıkan Özellikler: Izgara Odaklama | Tasarım Görünümü | Gelişmiş formül çubuğu | Çalışma Kitabı & Çalışma Sayfası Yöneticisi | Otomatik Metin Kütüphanesi | Tarih Seçici | Veri Birleştir | Hücreleri Şifrele/Şifre Çöz | Listeye Göre E-posta Gönder | Süper Filtre | Özel Filtre (kalın/italik/üstü çizili filtreleme...)...
En İyi15 Araç Takımı:12 Metin Aracı (Metin Ekle, Belirli Karakterleri Sil, ...) | 50+ Grafik Türü (Gantt Grafiği, ...) | 40+ Pratik Formül (Doğum tarihine dayanarak yaş hesapla, ...) | 19 Ekleme Aracı (QR Kodu Ekle, Yoldan Resim Ekle, ...) | 12 Dönüşüm Aracı (Kelimeye Dönüştür, Para Birimi Dönüştürme, ...) | 7 Birleştirme & Bölme Aracı (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...) | ... ve dahası
Kutools'u tercih ettiğiniz dilde kullanın – İngilizce, İspanyolca, Almanca, Fransızca, Çince ve40+ diğer dili destekler!

Kutools for Excel ile Excel becerilerinizi güçlendirin ve benzersiz bir verimlilik deneyimi yaşayın. Kutools for Excel, üretkenliği artırmak ve zamandan tasarruf etmek için300'den fazla Gelişmiş Özellik sunuyor. İhtiyacınız olan özelliği almak için buraya tıklayın...


Office Tab, Ofis uygulamalarına sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır.

  • Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma işlevini etkinleştirin.
  • Yeni pencereler yerine aynı pencerede yeni sekmelerde birden fazla belge açıp oluşturun.
  • Verimliliğinizi %50 artırır ve her gün yüzlerce mouse tıklaması azaltır!

Tüm Kutools eklentileri. Tek kurulum

Kutools for Office paketi, Excel, Word, Outlook & PowerPoint için eklentileri ve Office Tab Pro'yu bir araya getirir; Office uygulamalarında çalışan ekipler için ideal bir çözümdür.

Excel Word Outlook Tabs PowerPoint
  • Hepsi bir arada paket — Excel, Word, Outlook & PowerPoint eklentileri + Office Tab Pro
  • Tek kurulum, tek lisans — dakikalar içinde kurulun (MSI hazır)
  • Birlikte daha verimli — Ofis uygulamalarında hızlı üretkenlik
  • 30 günlük tam özellikli deneme — kayıt yok, kredi kartı yok
  • En iyi değer — tek tek eklenti almak yerine tasarruf edin