• DİKKAT

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

Seçenekli aşağı açılan liste

Katılım
29 Kasım 2007
Mesajlar
3
Excel Vers. ve Dili
2003 Türkçe
Arkadaşlar merhaba;

Daha önce soruldu mu bilmiyorum, eğer sorulduysa kusura bakmayın. Ben form şeklinde bir dosya düzenlemek istiyorum.

Örnek :

Cinsiyet : Erkek / Kadın (Çift seçenekli aşağı doğru kayarak açılan kutu)

Doğum Yeri : Adana / Adıyaman / Afyon .... / Zonguldak (81 seçenekli aşağı doğru kayarak açılan kutu)

İlçe : Seçilen ile göre değişken


Formda il seçeneği aşağı açılır bir listeden seçilerek işaretlenmeli ve bu seçime göre de ilçe seçeneği yine aşağı açılır bir listeden işaretlenmeli. Bütün il ve ilçe isimleri excelde ayrı bir sheet'de tablo halinde sıralı.

İli seçebiliyorum ama ilçeleri seçilen ile göre değiştiremiyorum. Yani bütün ilçeler listede gözüküyor. Ben sadece o ile ait ilçelerin gözükmesini istiyorum.

Ben listbox'ı kullanmaya çalıştım ama asıl istediğim excel hücresi içerisinde çözmek. Daha sonra yazacağım formüller bu verileri kullanacak ve hücreyi formüllemek daha kolay :)

Umarım derdimi anlatabilmişimdir. Şimdiden teşekkürler, iyi çalışmalar
 
örnek dosya eklermisiniz... il/ilçe bilgilerini görünce daha kolay olur
 
örnek dosya

Örnek dosya ektedir.. İlginiz için teşekkürler..

Sarı ile belirtilen yerlerde oluşturmak istiyorum. Sağ tarafta listbox ile oluşturduğum amatör örnek de mevcut..

Bu arada kurcalarken macro falan atadım galiba istemeden. Dosya açılırken soruyor çünkü aktif olsun mu diye? Onu nasıl iptal edecez??

Çok cahilim değil mi bu konularda:)
 

Ekli dosyalar

  • tez.rar
    tez.rar
    51.8 KB · Görüntüleme: 153
Moderatör tarafında düzenlendi:
Ornek bir dosya vermediginiz icin kendi kafamdaki dusunceyi yazayim

A1= Il adi
B1= ilce1/ilce2/ilce3..

bu sekilde 2.3.4 ... satirlarina yazili olan bir tablo olsun

Il listesinden ili sectiginizde diyelim ki c1 hucresine yazar
D1 hucresine de dusey ara formulu ile karsinina gelen ilceleri yazar

ilce listesine de VBA dan aa=split( D1,"/") komutunu kullanarak aa ya atadiginiz degerleri eklersiniz

split ve duseyara komutlarini bildiginizi dusunerek bu komutlarin detaylarina girmedim. Gerekirse yardim dosyalarindan bulabilirsiniz

----------


Baska bir alternatifde her ilcenin yanina ilini yazarsiniz , il listesinden sectiginiz ille ayni olan butun hucrelerden ilce listesine ekletmesini sagliyabilirsiniz
 
pardon ben cevap yazarken sizler de bir seyler yazmissiniz ekte dosya sanirim isinizi gorur
 
Ekli dosyayı inceleyiniz.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo hata
If Intersect(Target, [I3]) Is Nothing Then Exit Sub
Range("L3").Select
 With Selection.Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="=" & Range("I3")
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With
hata:
End Sub
 
Sn Orion Hocam bu tablo benimde işime yarar ancak makro ile bir düzenleme yapmamız lazım
||||||||A süt|B süt
1. satır ADANA (M)
2. satı |Aladağ

il adlarının altına boş bir satır açıp, açılan satırın B sütununa İlAdı/Merkez Yazsak Yani Edirne/merkez gibi ve il değiştiğinde ilçe listesinde varsayılan değer Merkez olarak gelsin.
 
Sn Orion Hocam bu tablo benimde işime yarar ancak makro ile bir düzenleme yapmamız lazım
||||||||A süt|B süt
1. satır ADANA (M)
2. satı |Aladağ

il adlarının altına boş bir satır açıp, açılan satırın B sütununa İlAdı/Merkez Yazsak Yani Edirne/merkez gibi ve il değiştiğinde ilçe listesinde varsayılan değer Merkez olarak gelsin.
Makroda bir değişiklik yapmaya gerek yok.
B sütununa Bir satır ilave ediniz ve ADANA_MERKEZ yazınız.Ve sonrada Ekle'den ,Ad' dan ADANA Alanını bulunuz ve hücre aralığını yeni oluşan duruma göre düzeltiniz.Diğer iller içinde ayni işlemi yapınız.İşlem tamam.:cool:
 
teşekkürler

üşenmeden cevap yazan ve yardımcı olan tüm arkadaşlara teşekkürler..

sanırım orion2 arkadaşımızın önerdiği yol daha çok işimi görür.. bu benim tezimle alakalı çok faydalı olacak.. çalışmamı biraz daha ilerlettikten sonra takıldığım yerlerde yine sizi rahatsız ederim..

iyi çalışmalar..

not: siteyi kuran ve paylaşımları ile siteyi zenginleştiren tüm arkadaşlara teşekkürler..
 
Hiç VBAyı kullanmadan veri doğrulama ve ad tanımlama ile yaptığım ekteki örneğide inceleyebilirsiniz.
 

Ekli dosyalar

Son düzenleme:
sn leventm çok teşekkürler otomatik olarak il (M) de getirtebilirsek çok güzel olacak
 
sn leventm yine cok orjinal bir calisma olmus, ellerinize saglik. ama Allah askina "ilce" bolgesi nasil otomatik olarak degisiyor anlatirmisin, bunu ilk kez gordum dorusu
 
Ad tanımlada ilce alanında oldukca karışık formuül kullanmış sayın leventm yazmayı bırakın kopyalayıp başka tabloya uygulamakta zorlanırım.

bu arada il adı değişince ilçe sütununda otoamatik olarak il adı(M) getirilebilirmi?
 
evet simdi farkettim, secili olan il yazili bolgenin adresini tespit ettiriyor ilk ve son satirini buluyor ve o bolgeye de ad tanimlaniyor ototmatik. Vay be bunu daha once bilseydim nice islerim daha kolay olurdu kimbilir.
 
sn leventm yine cok orjinal bir calisma olmus, ellerinize saglik. ama Allah askina "ilce" bolgesi nasil otomatik olarak degisiyor anlatirmisin, bunu ilk kez gordum dorusu

Bu uygulama forumda daha öncede var olan bir uygulamadır.

Burada kullandığım mantığı anlatmaya çalışayım. İlce ismiyle tanımlanan ad içinde kullanılan fonksiyon aşağıdaki gibidir.

=DOLAYLI("'Il-Ilce Tablosu'!B"&KAÇINCI(Genel!$I$3;'Il-Ilce Tablosu'!$A:$A;0)&":B"&EĞERSAY('Il-Ilce Tablosu'!$A:$A;Genel!I$I$3)+KAÇINCI(Genel!$I$3;'Il-Ilce Tablosu'!$A:$A;0)-1)

Yapılan işlem, seçilen ilin ilçelerinin bulunduğu alanı, diğer sayfada bulunan listeden tespit edip bunu "ad" olarak tanımlamaktan ibarettir. Aslında bu işlem sanıldığı kadar zor bir mantıkta değildir. Bu mantığı maddeler halinde anlatmaya çalışayım.

1-Önce 2.sayfadaki listenin A sütununda, seçilen ilin bulunduğu ilk satır formüldeki kırmızı renkli fonksiyon ile tespit edilir.

2-Sonra mavi renkli kısım ile de seçilen ilin bulunduğu son satır yine A sütunundan bulunur.

3- 2.sayfanın A sütunundan bulunan ilk ve son satırları B sütunundaki bir aralığa tanımlamak içinde siyah renkle işaretlenen DOLAYLI fonksiyonundan faydalanılır. Eğer değişken bir alanı tanımlayacaksak bu durumda kullanılan önemli fonksiyonlardan biri DOLAYLI fonksiyonudur. (bu fonksiyonla ilgili forumda çok sayıda örnek mevcuttur incelemenizi öneririm)

Not: Ben yazana kadar siz olayı çözmüşsünüz.:) Neyse başka bir üyemize faydalı olur umarım.

Ad tanımlada ilce alanında oldukca karışık formuül kullanmış sayın leventm yazmayı bırakın kopyalayıp başka tabloya uygulamakta zorlanırım.

bu arada il adı değişince ilçe sütununda otoamatik olarak il adı(M) getirilebilirmi?

Bu fonksiyonlarla yapılabilirmi bilmiyorum. Ancak I3 hücresi değişince bunun karşılığında O3 hücresine İl adı (M) yazılan bir küçük kod yazılabilir.
 
Açıklmalarınız için teşekkür ederim sayın leventm
 
arkadaşlar bende exelde liste olusturmak istiyorum ama yapamadım acaba burdaki örneğide anlayamadım ben secilen hücrelerde bir tedavi listesi acılsın istiyorum ve yanındaki hücrelerde o tedaviye uygun alt tedavi secenekleri listesi cıksın istiyorum diger tadavilerin alt secenekleri cıkmasın istiyorum acaba örnek verebilecek olan varmı

mesela tedavi secenekleri
periodontal tedevi
(alt tedavileri)
küretaj
SRP
RP
cerrahi tedavi
(alt tedavileri)
membran
greft
espe

gibi örneklerde ben ilk kutuda (A1) preiodontal tedavi veya cerrahi tedavi seceneklerinin cıkmasını istiyorum yanındaki kutuda (B1) ise secilen tedaviye ait alt tedavi seceneklerinin cıkmasını istiyorum acaba bu konuda bana yardımcı olursanız cok sevinirim
yardım eden tum herkese simdiden cok teşekkürler
 
konu hakkında yardıma ihtiyacım var...ek dosyalar kırık link..
 
Geri
Üst