Veri Doğrulama ile Süzme

Katılım
7 Kasım 2012
Mesajlar
4
Excel Vers. ve Dili
excel 2003-2007
Bir listem var ve bu listedeki süz işleminin veri doğrulama uygulanmış B1 (bu değişkenlik gösterebilir) hücresine bağlı çalışmasını istiyorum.

Veya yukarıdaki belirttiğim mantığı Liste kutusu ve açılan kutu yöntemi ile çoklu makro çalışırmak istiyorum.

Anlatmaya çalıştığım işlemleri ekteki excel belgesinde de mümkün olduğunca anlatmaya çalıştım.

Amacım her iki belirtiğim yöntemide öğrenmektir. Tablo hazır olsun derdinde değilim.

İlgilenen arkadaşlara şimdiden teşekkür ederim.Yardımlarınızı bekliyorum.
 

Ekli dosyalar

vardar07

Destek Ekibi
Destek Ekibi
Katılım
19 Mart 2008
Mesajlar
2,154
Excel Vers. ve Dili
Office 2007 Enterprise
Türkçe
Merhaba , Sadece b1 değişince süzme gerçekleşiyor. Module24 içindeki kodları ve sahil sekmesi kodlarını inceleyip diğerlerini yapmaya çalışınız.
 

Ekli dosyalar

Katılım
7 Kasım 2012
Mesajlar
4
Excel Vers. ve Dili
excel 2003-2007
Anladığımı kısaca özetlemem gerekirse ilgilenen ve öğrenmek isteyen arkadaşlar içinde açıklayıcı olsun;

Çalışma Sayfasındaki belirli bir hücre değiştiğinde işlem yapması için;
Private Sub Worksheet_Change(ByVal Target As Range)yani Çalışma sayfasında hedef dizin değiştiğinde
ifadesini kullanıyoruz.

Sonra hücreyi belirtiyoruz;
If [b1] yani eğer b1

sonrada yazılana göre makronun çalışmasını sağlıyoruz.
= "TÜMÜ" Then Module10.Makro6 yani "TÜMÜ" kelimesi yazılırsa Module10'daki Makro 6'yı çalıştır.

buraya kadar anladıklarım doğruysa;

B2 hücresinde veri doğrulama ile 4 ve 12 rakamları gelecek şekilde farklı 2 makro çalıştırmam gerekirse

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If [b1] = "TÜMÜ" Then Module24.Makro6
If [b1] = "AÇIK ALAN" Then Module24.Makro1
If [b1] = "KAPALI ALAN" Then Module24.Makro2
If [b1] = "BÜFE" Then Module24.Makro3
If [b1] = "KAPANIŞ" Then Module24.Makro4
If [b1] = "İZİNSİZ" Then Module24.Makro5
If [b2] = "12" Then Module17.onikiay
If [b2] = "4" Then Module17.dörtay
End Sub
yazdığımda sorun olmaması gerekir.

Ama hata alıyorum sonsuz bir döngüye giriyor.Sanırım hatalı bir işlem yapıyorum.

4 ve 12 kelimelerine bağlı makrolar aşağıdadır.

Kod:
Sub onikiay()
    Columns("B:IV").Select
    Selection.EntireColumn.Hidden = False
    Columns("D:E").Select
    Selection.EntireColumn.Hidden = True
    Columns("W:W").Select
    Selection.EntireColumn.Hidden = True
    Range("P6").Select
    ActiveCell.FormulaR1C1 = "HAZİRAN"
    Range("Q6").Select
    ActiveCell.FormulaR1C1 = "TEMMUZ"
    Range("G8").Select
    End Sub
Sub dörtay()
    Columns("B:IV").Select
    Selection.EntireColumn.Hidden = False
    Columns("D:E").Select
    Selection.EntireColumn.Hidden = True
    Columns("K:O").Select
    Selection.EntireColumn.Hidden = True
    Columns("T:V").Select
    Selection.EntireColumn.Hidden = True
    Columns("X:X").Select
    Selection.EntireColumn.Hidden = True
    Range("P6").Select
    ActiveCell.FormulaR1C1 = "HAZİRAN"
    Range("Q6").Select
    ActiveCell.FormulaR1C1 = "TEMMUZ"
    Range("G8").Select
    End Sub
 

vardar07

Destek Ekibi
Destek Ekibi
Katılım
19 Mart 2008
Mesajlar
2,154
Excel Vers. ve Dili
Office 2007 Enterprise
Türkçe
Evet hata var çünki benim size hazırladığım kod b1 de var olan bir yazıya göre çalışmakta sizin eklediğiniz b2 ye göre orada herhangi bir olay olmuyor. Döngüye girmez bende hata vermiyor. Eğer butona basınca b2 ye 4 veya 12 yazdırırsan senin kodlarda çalışır.
Kod:
If [b2] = "12" Then Module17.onikiay
If [b2] = "4" Then Module17.dörtay
 
Katılım
7 Kasım 2012
Mesajlar
4
Excel Vers. ve Dili
excel 2003-2007
Bende onu demek istedim sizin verdiğiniz koda ek olarak
Kod:
If [b2] = "12" Then Module17.onikiay
If [b2] = "4" Then Module17.dörtay
kodlarını ekledim ve B2 hücresine veri doğrulaması ile 4 ve 12 rakmalarını koydum ama B2 her değiştirdiğimde sonsuz döndü.
 

Ekli dosyalar

Son düzenleme:

vardar07

Destek Ekibi
Destek Ekibi
Katılım
19 Mart 2008
Mesajlar
2,154
Excel Vers. ve Dili
Office 2007 Enterprise
Türkçe
Merhaba, Module17.dörtay ve oniki ay makroları ne yapacağını bilmiyor. Dikkat edersen hücreleri seçip başa dönüyor seçimleri sonlandıramadığı için döngü oluyor. Kullanıcı tanımlı makro olduğu için seçim nerden başlayıp ne yapıp duracak belirtmen lazım. Mesala 4 aylık neye göre ocak tan sonramı şubattan sonramı, Hangi hücreleri toplayıp süzecek. Yıllıkta aynı şekilde. Makroyu ona göre düzenlersen problem olmaz. Kolay gelsin.
 
Katılım
7 Kasım 2012
Mesajlar
4
Excel Vers. ve Dili
excel 2003-2007
İlgilendiğiniz ve yardımınız için teşekkür ederim.
 
Üst