• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Array Kullanımı Hakkında

Bu sorun verilen destek sayesinde çözüme ulaştırılmıştır.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Hayatlife

Yeni Üye
Kullanıcı Bilgileri
Katılım
4 Eyl 2021
Mesajlar
17
Aldığı beğeni
1
Excel Versiyonu
Office 2019 TR
Konuyu Başlatan
Merhabalar,

Excelimin bir sayfasında yaklaşık 250 bin satır data , v bazı sütunları dolu olan ( 1 - 250 arası ) datam mevcut.
Sorgulama sayfamda aynı anda bazı değerleri bu data sayfasında her hücereye bakarak bulduğu değerleri listemek istiyorum..
Bu işlemi dizin haline getirip Array ile daha hızlı sorgulama yapabilir miyiz. Yada dizin olmadan da hızlı sorgu yapılabilir mi ?
 
Çözüm
Dünkü dosyada kalan gibi olayı görmek için alttaki kodu ekledim.
Döngünün son satırından geri geri saymaya başlar.Fazla teferruatlı yapmadım.

Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
Merhaba.
Örnek dosya gerekmektedir.
 
Tahmin ediyorum o arkadaşı baş harfi galiba k sonu 2 olmalı :)
Yok Hocam Başkası sanırım Ferhat A***** ..
Konu hakkında düşünceniz nedir ?
şu anki makro her hücreye gidip bul getir mantığı ile çalışıyor. Birde yavaşlamasının nedenli. Farklı isimlerde kodu bulduğunda o ismin başlığına bakıp hücreye yazıyor ve hücrede aynı kod var ise yazmıyor. Bunlar sanırım yavaşlatıyor..
 
Yok Hocam Başkası sanırım Ferhat A***** ..
Konu hakkında düşünceniz nedir ?
şu anki makro her hücreye gidip bul getir mantığı ile çalışıyor. Birde yavaşlamasının nedenli. Farklı isimlerde kodu bulduğunda o ismin başlığına bakıp hücreye yazıyor ve hücrede aynı kod var ise yazmıyor. Bunlar sanırım yavaşlatıyor..
Valla ne çok tanıyanım varmış abey bende şaşırdım :)
Ben başkası diye tahmin ettim yazdığınız kişiyi sanırım çıkaramadım :(
Abey ilk başta döngü kurup Find ile buldurulabilir diye aklıma geliyor.
Daha tam aklımda oturtamadım.Bitince alternatifleri eklerim.
Belki Ado ve SQL ile yapılabilir Join olarak ama o işin üstadı @halily abey.
Konuyu zaten okur o da çözüm arar sanıyorum.
Kod yapılır tabii hızlı nasıl olur ona bakacağız.
 
Tabii tüm variyi bir diziye aldırıp ordanda döngü ile aratabilirizbelki dictionaryde için işine girer.Bu arada Sorgulama sayfasında neden C2 de Oe3 ile başladı.
 
Yavaş çalışan kodunuz nasıl ekleyebilirmisiniz?
 
Sonuç sayafasındaki sonuçlar doğrumu örnek dosyaya göre?
 
Hiç emin olmamakla beraber tahminen kod yazdım ama doğru olduğunu sanmıyorum anladığımı.
Sayfa1 e sonucu çıkarttım.Öylemi olacak?
Sonuç sayfasındaki sonuçlar yanlış bence sizinki.
Ordan mantık kurararak bişeyler yaptım.

C#:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
 

Ekli dosyalar

  • örnek dosya1.xlsm
    68.3 KB · Gösterim: 8
Hiç emin olmamakla beraber tahminen kod yazdım ama doğru olduğunu sanmıyorum anladığımı.
Sayfa1 e sonucu çıkarttım.Öylemi olacak?
Sonuç sayfasındaki sonuçlar yanlış bence sizinki.
Ordan mantık kurararak bişeyler yaptım.

C#:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
Hocam, Mantığınız doğru.. Sonuç kısmında aşağıdaki tekraralayan kodlar için siz her hücredki sonucu yazdırdığını için çıktı.. Aslında Yukardaki gibi bir hücrenin içine
Tabii tüm variyi bir diziye aldırıp ordanda döngü ile aratabilirizbelki dictionaryde için işine girer.Bu arada Sorgulama sayfasında neden C2 de Oe3 ile başladı.
Sütün sayısını belirleybilmek için oe ismi verdim.. Arama aralığını seçtiriyoruz yukarda.. örnek 3 - 10 arasını seçtiğimizde 3. sütundan 10.sütuna kadar ara anlamına geliyor.
 
Valla ne çok tanıyanım varmış abey bende şaşırdım :)
Ben başkası diye tahmin ettim yazdığınız kişiyi sanırım çıkaramadım :(
Abey ilk başta döngü kurup Find ile buldurulabilir diye aklıma geliyor.
Daha tam aklımda oturtamadım.Bitince alternatifleri eklerim.
Belki Ado ve SQL ile yapılabilir Join olarak ama o işin üstadı @halily abey.
Konuyu zaten okur o da çözüm arar sanıyorum.
Kod yapılır tabii hızlı nasıl olur ona bakacağız.
 
Benimde Düşüncem SQL olursa sanki hız excele göre daha da artar..
Ama bir videoda gördüm Array ile 2 milyon veride saniyeler için sorgu yapıldı.. TXT de dosyası üzerindeki 2 milyon veri ama..
Bu mümkün mü ?
 
Örnek dosyadaki veriyi değiştirşp yollayın ben şifreyi kırarım abey :)
Yani o kodda değişiklik ilede hızlanabilir.
Birde tam olarak sonucu excelde bir gösterin.
 
Zaten bir kere diziye aldırdım :)
Videodaki kişi galiba uzman başlayan diye birisi yanılmıyorsam.
 
Tamam abey bugün bakarım.Hallederiz Allah'ın izniyle.
Allah Razı olsun Hocam..
mesela 1000 satır sorgu yapıyorum.. 20-25 dk sürüyor. Excel kitleniyor o anda başka bir iş yapmaıyorum excel ..
süre ne kadar kısalırsa çok iyi.
Birde kodları görüntüleyebildniz mi ?
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Konuyu okuyanlar

Geri
Üst