2 ayrı açılır listeye göre arama yapmak

ahmetmis

Altın Üye
Katılım
17 Kasım 2004
Mesajlar
78
Excel Vers. ve Dili
Excel 2019
Altın Üyelik Bitiş Tarihi
04-05-2026
Elimdeki excel tablosunda bir ile ait ilçeler ve o ilçelerin mahalleleri var.
Açılır listeden Bir ilçesini seçtiğim zaman 2. açılan listeye Bir ilçesine ait mahallelerin gelmesini ve oradan istediğim mahalleyi açmak istiyorum. B ilçesini seçtiğim zaman B ilçesinin mahallelerini ayarlamak istiyorum.

Bu seçime göre arama yaptırmak itiyorum. Örneğin;
Bir İlçesini seçtim
Bir ilçesine ait mahallelerden X mahallesini seçtim.
Bu iki seçime göre A İlçesi X mahallesi istiyor olun istiyorum. Şişme hangi formül ile yapabilirim.

Şimdiden çok teşekkür ederim.
 

Ekli dosyalar

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,647
Excel Vers. ve Dili
Pro Plus 2021
Sayfanın kod modülüne ekleyin.
Kod:
Public Dic As Object
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$3" Then
        If Dic Is Nothing Then Call yukle
        With Target.Offset(, 2)
            .ClearContents
            With .Validation
                .Delete
                .Add Type:=xlValidateList, Formula1:=Dic(Target.Value)
            End With
        End With
    End If
End Sub
Sub yukle()
    Set Dic = CreateObject("Scripting.Dictionary")
    With Sheets("İlçe-Mahalle")
        For i = 2 To .Cells(1, Columns.Count).End(xlToLeft).Column
            Dic(.Cells(1, i).Value) = Join(Application.Transpose(.Range(.Cells(2, i), .Cells(Rows.Count, i).End(3)).Value), ",")
        Next i
    End With
End Sub
 

ahmetmis

Altın Üye
Katılım
17 Kasım 2004
Mesajlar
78
Excel Vers. ve Dili
Excel 2019
Altın Üyelik Bitiş Tarihi
04-05-2026
Sayfanın kod modülüne ekleyin.
Kod:
Public Dic As Object
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$3" Then
        If Dic Is Nothing Then Call yukle
        With Target.Offset(, 2)
            .ClearContents
            With .Validation
                .Delete
                .Add Type:=xlValidateList, Formula1:=Dic(Target.Value)
            End With
        End With
    End If
End Sub
Sub yukle()
    Set Dic = CreateObject("Scripting.Dictionary")
    With Sheets("İlçe-Mahalle")
        For i = 2 To .Cells(1, Columns.Count).End(xlToLeft).Column
            Dic(.Cells(1, i).Value) = Join(Application.Transpose(.Range(.Cells(2, i), .Cells(Rows.Count, i).End(3)).Value), ",")
        Next i
    End With
End Sub
çok teşekkür ederim
 

ahmetmis

Altın Üye
Katılım
17 Kasım 2004
Mesajlar
78
Excel Vers. ve Dili
Excel 2019
Altın Üyelik Bitiş Tarihi
04-05-2026
Bir konuda daha sizden yardım isteyebilir miyim? İlk açılan listeden ilçeyi seçtiğim zaman, 2.açılır listeye seçtiğim ilçenin mahalleleri gelebilir mi?
 

Ekli dosyalar

Katılım
8 Ekim 2009
Mesajlar
642
Excel Vers. ve Dili
Office 2010 & 2016 TR
Altın Üyelik Bitiş Tarihi
26-12-2023

Ekli dosyalar

ahmetmis

Altın Üye
Katılım
17 Kasım 2004
Mesajlar
78
Excel Vers. ve Dili
Excel 2019
Altın Üyelik Bitiş Tarihi
04-05-2026
Merhaba,
@İdris SERDAR Beyin dosyası üzerinden arama işlemlerinin eklenmiş hali ekte.
Açılır listelerde 1. açılır listeyi seçtikten sonra seçilen ilçeye ait mahalleler otomatik 2.açılır listeye gelebilir mi? 1.açılır listede ilçe değiştiği zaman 2.açılır liste elle seçilene kadar değişmiyor.
 
Katılım
8 Ekim 2009
Mesajlar
642
Excel Vers. ve Dili
Office 2010 & 2016 TR
Altın Üyelik Bitiş Tarihi
26-12-2023
O şekilde zaten.
Sadece ilçeyi değiştirince halen son seçilen mahalle görünüyor.
Siz mahalle seçmek için açılır listeyi tıklayınca o ilçeye ait güncel mahalle listesi görünüyor.
 
Son düzenleme:

ahmetmis

Altın Üye
Katılım
17 Kasım 2004
Mesajlar
78
Excel Vers. ve Dili
Excel 2019
Altın Üyelik Bitiş Tarihi
04-05-2026
O şekilde zaten.
Sadece ilçeyi değiştirince halen son seçilen mahalle görünüyor.
Siz mahalle seçmek için açılır listeyi tıklayınca o ile ait güncel mahalle listesi görünüyor.
İlçeyi değiştirdiğim zaman mahalleninde değişmesini istiyorum. öyle bişey mümkün mü? Son seçilen mahalle değişip seçtiğim ilçenin ilk mahallesi gelsin istiyorum. Bu mümkün müdür acaba?
 
Üst