Excel Veri Doğrulama İçinde Veri Doğrulama

18.155 defa okundu

Daha önce veri doğrulama ve çoketopla ile ilgili olarak bir video hazırlamıştım. İzlemediyseniz tıklayın.

İl seçince, o ile ait ilçeler çıksın istiyorsanız ya da Bölge müdürlüğü seçince o bölgeye bağlı şubeler listelensin diyorsanız aşağıdaki video işinizi çözecektir. Formülasyon olarak alternatifleri vardır ancak aşağıdaki videodan çok farklı değildir. Bunun yanısıra userform ve VBA aracılığı ile de yapabilirsiniz. Fakat, bu yöntem oldukça kullanışlıdır.

Faydalı olması dileğiyle…

Video’da yer alan excel dosyasını indirmek için tıklayınız.

Bunlar da ilginizi çekebilir

  1. yiğiy gök dedi ki:

    İlginç ve işe yarar olmuş hocam. Peki offset kullanarak yapılamaz mıydı bu?

    • bymmb dedi ki:

      Merhaba. Tabiki yapılabilir. Yakın zamanda offset(kaydır) fonksiyonu ile dinamik alan tanımlanmasına ilişkin bir video hazırlayacağım. Takipte kalın. 😉

  2. murat duran dedi ki:

    Merhaba Hocam,

    Elinize sağlık güzel bir çalışma olmuş. Fakat merak ettiğim bir konu var. Çalışmanızdaki veri doğrulama hücresini alt alta diğer hücrelere de üstteki hücreler kalmak şartıyla uygulayabilir miyiz? Yani ilk hücrede il ve ilçe seçimi yapıldıktan sonra altındaki hücrelerde de aynı şekilde seçim yapabilir miyiz? Sonuçta “range” olarak adlandırdığınız hücre yalnızca 1 veri doğrulama hücresi için aralık belirlemekte. Bunu aynı şekilde çoğaltabilir miyiz? Yardımcı olursanız sevinirim. Saygılar…

    • bymmb dedi ki:

      Merhaba,
      Eğer her bir il ve ilçe seçimi birbirinden bağımsız olacaksa, hepsi için ayrı yeni bir range tanımlamanız gerekir. Aksi takdirde hep ilk il seçimine bağımlı olarak çalışır.

      • murat duran dedi ki:

        Anladım hocam fakat tanımlayacağımız yeni bir range de önceki range’i çalıştıran kod-1 ve kod-2 ye bağımlı olacaktır. Bu sefer de her range için yeni kodlar yazmak gerekecek. Bu da her hücre için çok fazla işlem yapmayı gerektirir değil mi? Bunun daha kısa bir yolu yok mudur?

        • bymmb dedi ki:

          Makrolarla ve alan tanımlamayla yapılabilecek çeşitli yollar var tabiki.
          Siz hayalinizdeki tabloyu söyleyin ona göre fikir vereyim ben size 🙂

  3. murat duran dedi ki:

    Şöyle ki; aynı il ve bağlı ilçeleri gibi benim 2 tane listem var 2. liste 1. listenin alt elemanları. 1.listeden seçtiğim parametreye göre 2.listede sadece buna bağlı olanlar gelsin ve burdan seçebileyim istiyorum. Yalnız bu seçimler alt alta her satırda olacak ve hücreler birbirinden bağımsız çalışacak.
    Biraz daha farklı düşünecek olursak diyelim ki veri doğrulamayı sadece 1 satır için yaptık. Acaba bu satırda seçtiklerimi başka bir excel sayfasında kaydedebilir miyim? Ama ben kaydettikçe bir alt satıra inecek ve önceki kaydımı etkilemeyecek. Bu olabilir mi? Aslında bunları belki de farklı programlama dillerinde yapmak daha kolay olur. Yalnız ben k-excelle uğraşmak ve neler yapabilirm görmek istiyorum. Saygılar…

    • bymmb dedi ki:

      Bu sayfadan indirdiğiniz örnek dosyaya bir buton ekleyin ve aşağıdaki kodu yapıştırın.
      Her yeni seçimden sonra butona tıklarsanız, Sayfa2’ye alt alta kaydeder.

      il = Cells(3, 7)
      ilce = Cells(3, 8)
      sayac = WorksheetFunction.CountIf(Sheets(“sayfa2”).Range(“A:A”), “<>“) + 1
      Sheets(“Sayfa2”).Cells(sayac, 1) = il
      Sheets(“Sayfa2”).Cells(sayac, 2) = ilce

  4. Ahmet KOYUNCU dedi ki:

    Merhaba,

    Öncelikle teşekkür ederim. Benim iki sorum olacak.

    Birinci sorum : Örnekte iki liste verilmiş, bu listeleri çoğaltabilir miyiz.
    Şöyle ki: İL > İLÇE > MAHALLE > Sokak > Kapı No. vs. gibi alt seçenekleri çoğaltabilir miyiz ?

    İkinci Sorum: Bu tekniği farklı bir yöntemle gerçekleştirebilir miyiz ?

    Teşekkür ederim.

    • bymmb dedi ki:

      Merhaba. Faydalanmanıza sevindim. Listede herhangi bir sınır yok, istediğiniz kadar genişletebilirsiniz.Veri tablosunu ona göre yan yana düzenlerseniz sonuç alırsınız. Bu işlem; makro ile ya da Offset fonksiyonu ile de gerçekleştirilebilir.

      • Ahmet KOYUNCU dedi ki:

        Teşekkür Ederim ilginizden ötürü. Söylediğiniz şekilde deneyeceğim. Selametle.

  5. Taner dedi ki:

    Anlatımınız için çok teşekkür ederim. Bir sorum olacaktı. Dediğiniz gibi il içe olayını yaptım. 1. satırda gayet güzel çalışıyor ancak ikinci satıra geçtiğimde ilk seçime bağlı ikinci satırda ilçeler düzgün gelmiyor. Yani İlk satırda İstanbul seçtiysem ilk satırda ilçelerde İstanbul’un ilçeleri geliyor. Ancak İkinci satırda Ankara seçtiğimde ilçeler kısmında İstanbul’un ilçeleri geliyor. Bu sorunu nasıl çözebilirim. Yani yapmış olduğum listeyi nasıl tüm satırlara uygularım.
    Teşekkürler

    • bymmb dedi ki:

      İl veri doğrulaması için tanımlanan ad tüm veri doğrulamalarda sorunsuz çalışır.
      Ancak ilçeler için aynı şey söz konusu değil. Çünkü ilçe veri doğrulamasının formülü, ilk il veri doğrulamasına bağlı çalışır.
      Bu nedenle her yeni ekleme için, yeni bir ilçe veri doğrulaması yapmalısınız. Bunu da yeni il doğrulamasına bağlamalısınız.
      Saygılar.

  6. yasar dedi ki:

    merhaba, kullandıgım veriler ile ikinci veri dogrulamayı yaptıgım çalışma sayfaları farklı ise hata alıyorum. nasıl düzeltilebilir?

    • bymmb dedi ki:

      Merhaba.
      Formüllere sayfa ismi eklemelisiniz. Sayfa1!A2:A10 gibi.
      Eğer hata alırsanız, dosyanızı admin@bymmb.com adresine gönderin, bakarım.

      • yasar dedi ki:

        teşekkür ederim hocam. size soruyu sorduktan 5 dk sonra yapmıştım 🙂

  7. ALi Önay dedi ki:

    Yukardaki veri doğrulama işlemi yaptım. Ama Ben bu veri doğrulamayı başka bir sayfada yapmak istiyorum. ama yapamadım

  8. Oguz lamba dedi ki:

    Hocam emeğinize ve elinize sağlık çok faydalı bir çalışma olmuş bu çalışmayla ilgili ben bir sorun yaşadım, İl seçimi ile ilgili veri doğrulamayı farklı bir sayfada tamamladım, ilçe seçimiyle ilgili dediğiniz gibi =dolayılı(range) ifadesini de kullandım ancak farklı bir sayfada olmasından dolayımı anlayamadığım bir nedenden ilçeler çıkmıyor bu konuda yardım edebilirmisiniz lüften

  9. ahmet keskes dedi ki:

    Bu veri doğrulamayı 8 seçenekli yapabilirmityiz..

  10. Fatih dedi ki:

    merhaba
    hocam

    ürün kodunu yazınca ürün adı atıyor ,ürün adı yazıncada ürün kodu atmasını istiyorum ve bunlarda veri doğrulama olacak ve diyelim a harfını yazınca veri doğrulama da süzme olacak olabilirmi ?

  11. Emir dedi ki:

    Teşekkürler. Başarılı. Ayrıca çıkan hatların hepsini nokta atışıyla çözmenizde çok iyi. başarılar.

  12. hakan dedi ki:

    Hocam elinize sağlık bu videodan faydalanarak kendim için bir veri doğrulaması yaptım yalnız proplemim su tek satırda çalışıyor alt satıra indigimizde çalışmıyor isteğim su c sütunundaki verilerin tamamını bu şarta sokmak istiyorum ama her satır için kod 1 ve kod 2 işlemini yapmak zor çünkü açılan veri digralamsinda seçenek cok

  13. reza dedi ki:

    Hocam merhaba öncelikle elinize sağlık.
    Benim şu şekilde problemim oldu. Ben sadece tek bir satıra yapmak istemiyorum bunu. Öğrencilerim var hepsini alt alta nufusa bağlı oldukları il ilçe diye kaydedeceğim. Yani videodaki tabloya örnek verecek olursak G2 de 1.ğrenicnin ili ilçesi G3de de 2.öğrencinin ili ilçesi G4 de 3. öğrencinin … şeklinde gidecek bunu nasıl yapabilirim, yardımcı olursanız çok müteşekkir kalırım.

    • bymmb dedi ki:

      Merhaba.
      Bu şekilde cevap verebilmek çok zor. Örnek bir dosyayı admin@bymmb.com adresine mail atabilirseniz, yardımcı olurum.
      Saygılarımla.

  14. Adem dedi ki:

    Hocam userform da combobox1 de ili seçtiğimizde ilçelerinde combobox2 de görünmesini nasıl sağlayabiliriz?

  15. Behçet dedi ki:

    Çok teşekkür ederim Tam 3 saattir sizin sayfada misafirdim. Çok faydalandım. Sağolun.

  16. Yasin dedi ki:

    Merhabalar,

    Anlatımınız için çok teşekkür ediyorum çok faydalı bilgiler öğrendim. Ancak benim biraz daha farklı bir ihtiyacım var ve tam olarak nasıl çözeceğimi bulamadım. Elimde bir liste var ve düşeyara ile isimden bulup yazdırıyorum, buraya kadar her şey güzel hoş ancak bazı isimleri seçince yazdıracağım diğer verilerden de seçme yapmak istiyorum. yani şöyle bir örnek vermek gerekirse bir inşaat firması olduğumuzu düşünün a firmasını box içinden seçtik bu firmaya ait adres, telefon, şantiye gibi bilgiler geldi ama b firmasını seçince birden fazla şantiyesi yada adresi varsa onlarıda diğer hücrede seçmemiz gerekiyor eğer tek ise böyle bir şeye gerek olmasın direk otomatik atsın. Bunu eğer ile mi yaparız yada farklı şekilde mi yaparız bilemedim umarım derdimi tam anlatabilmişimdir 🙂

  17. ömür dedi ki:

    Merhaba;
    Bire bir aynısını yazıyorum ama birtürlü listeletemedim, tanımsız degişken hatası veriyor. bir değişken tanımladığımda string veya integer tür hatası diyor. sayfa1 dışında herhangibi yere kod yazıyormusunuz.
    (not: yazılımcı değilim amatör olarak uğraşıyorum)

    • bymmb dedi ki:

      Merhaba.
      Birebir aynısını yapıyorsanız, sonuç da aynı olmalı. Bir yerlerde atladığınız bir şey olabilir.

  18. Demmir dedi ki:

    Hocam merhaba,
    buton eklemeye çalıştım fakat olmadı. Eklenmiş halini paylaşırmısınız lütfen. Birde 6 sütun olsa onları 2.sayfaya alt alta kaydetsek)
    1.sütun İl
    2.sütun ilçe (veri doğrulama içinde veri doğrulama)
    3.sütun firma
    4.sütun tarih
    5.sütun yorum

    gibi…

    Teşekkürler.

  19. BİLGİN ERCAN dedi ki:

    hocam,
    benim ilçe listem aynı excel in sayfa1deki sayfasında sayfa2 de bir hücreye =dolaylı(sayfa2!range) diye yazdım fakat verileri getirmiyor.

    yardımcı olursanız sevinirim.

  20. Nurettin dedi ki:

    Merhaba Hoca
    Eline saglik
    Bir sorum olacak;

    A sutunundaki tarihlerden X2 deki tarihe uyan
    B sutunundaki kelimrleeden Y2 deki kelimeye uyan ve
    C sutunundaki saatlerden Z2 deki saatten buyuk ise istenilen (veya formul yazilan) hucreye 1 yazdirabilir miyiz degil ise 0 yazdirabilir miyiz.

  21. Nurettin dedi ki:

    Tabiki hepsi ayni satirda ise

  22. tolga dedi ki:

    Merhaba Hocam
    Çok yararlı bir video olmuş. Benim takıldığım bir konu var bir türlü çözemedim belki siz yardımcı olabilirsiniz. Bu range olarak isimlendirdiğiniz hücre var, o hücrenin içindeki B58:B82 değerini alarak veri doğrulamada kullanılabiliyor. sizin formülünüz şu şekilde olmuş =DOLAYLI(range). Benim yapmak istediğim ise şu =DOLAYLI(A2) burada ise şunu yapmak istiyorum, A2’ye range yazarsam veri doğrulamada kaynak olarak =DOLAYLI(range) çalışsın eğer A2’ye örneğin renkler yazdığımda =DOLAYLI(renkler) olarak çalışsın ve renkler olarak isimlendirdiğim hücreye de C1:C10 yazdığım için, C1 ve C10 aralığına da renkleri yazıp bu renkleri veri doğrulamada listeletmek istiyorum. Ama bir türlü yapamadım. Teorik olarak hücreye =C1:C10 yazdırmayı başarıyorum ama bu hücrenin ismine renkler dediğimde ve veri doğrulamanın kaynağına =DOLAYLI(A2) yazdığıma açılır liste açılmıyor. Yardımcı olabilirseniz çok sevinirim.
    saygılarımla
    Tolga

    • bymmb dedi ki:

      Hücreye yazdirma islemini soyle yapin;
      Sayfa1!C1:C10
      Bunu dolayli icinde gosterirseniz sorun çözülür.

      • tolga dedi ki:

        Cevabınız için teşekkürler. hücreye dediğiniz gibi Sayfa1!C1:C10 yazdım. Bu hücreye isim olarak renkler verdim. Sonra A2 hücresine renkler yazdım. Ve b2 hücresine veri doğrulama kaynak kısmına =DOLAYLI(A2) yazdım. B2 deki açılır listeyi tıkladığımda Sayfa1!C1:C10 çıkıyor.

        Bir yerde bir hata mı yaptım?
        saygılar
        tolga

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.