Skip to main content

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

Author: Xiaoyang Last Modified: 2025-06-10

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  |  Geliştirilmiş İşlevleri Çağır
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle   |  Boş Satırları Sil   |  Sütunları veya Hücreleri Verileri Kaybetmeden Birleştir   |   Formül Olmadan Yuvarla ...
Süper ARA: Çok Kriterli Düşeyara    Çoklu Değer Düşeyara  |   Ç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ı ve 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 (Auto Text)   |  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 filtrele...) ...
En İyi15 Araç Seti12 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ştir & Böl Aracı (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...)   |   ... ve daha fazlası

Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar.  En çok ihtiyacınız olan özelliği almak için buraya tıklayın...


Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır

  • Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
  • Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
  • Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!