• DİKKAT

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

Farklı Sayfadan SQL sorgusu ile veri almak

Katılım
16 Ağustos 2004
Mesajlar
137
Excel Vers. ve Dili
Office 2010 En 64 Bit
Merhaba,

Excel'de kapalı kitaplardan veri sorgulamak için ado kullanıyorum. Ancak şimdi üzerinde çalıştığım bir proje için aynı kitaptaki farklı sayfadan sql sorgusu ile veri almam gerekiyor ve sanırım kafam durdu, nasıl yapacağım ile ilgili fikir üretemiyorum.

Sitede araştırdığımda da farklı kitaplardan veri alma ile ilgili bir çok çözüm buldum, ancak aynı kitaptaki farklı sayfadan veri almak için birşeyler bulamadım.


Örnek: sayfa1'e sayfa2'deki a,b,c sütunlarındaki 300000 satırlık verinin içinden şöyle bir sorgu ile veri çekmem gerekiyor
"SELECT A_Sutunu, B_Sutunu, C_Sutunu
FROM Sayfa2
WHERE A_Sutunu In('qwe','rty') AND B_Sutunu = 'XYZ'
ORDER BY A_Sutunu"

Yardımınızı rica ediyorum.
 
Merhaba,

Farklı sayfalardan derken, join türü bir birleşimi mi kasdediyorsunuz?
 
Merhaba Zeki Bey,

Hayır, çalışma kitabında iki sayfa olduğunu düşünün, kodu çalıştırınca Sayfa2'deki A,B,C sütunlarındaki verileri kriterime göre sorgulayıp Sayfa1'e yazacak.

Ne Join ne de başka bir detay yok. Basit bir SQL cümlesi olacak yani.
 
Merhaba,
yanlış anlamadıysam şu şekilde deneyebilirsiniz
Kod:
"SELECT A_Sutunu, B_Sutunu, C_Sutunu
FROM [Sayfa2$]
WHERE A_Sutunu In('qwe','rty') AND B_Sutunu = 'XYZ'
ORDER BY A_Sutunu"

İyi çalışmalar.
 
Merhaba,
yanlış anlamadıysam şu şekilde deneyebilirsiniz
Kod:
"SELECT A_Sutunu, B_Sutunu, C_Sutunu
FROM [Sayfa2$]
WHERE A_Sutunu In('qwe','rty') AND B_Sutunu = 'XYZ'
ORDER BY A_Sutunu"

İyi çalışmalar.


Merhaba,

Sorun oluşturacağım SQL cümlesinde değil zaten. Bu cümleyi üzerinde yürüteceğim ADODB connection'unda nasıl bir Connection String kullanmam gerektiğinde.

Araştırdığım tüm örneklerde başka (kapalı) çalışma kitaplarına nasıl bağlanılacağı anlatılıyor. Ama bir türlü mevcut çalışma kitabındaki bir sayfayı nasıl işaret edeceğimi bulamıyorum.

Not: Data Source olarak bu kitabın yolunu ve adını vermem de pek mümkün değil, eğer öyle yaparsam sanırım dosyayı kaydedene kadar Sayfa2'de yaptığım değişiklikler sorgulama sonuçlarına yansımayacaktır.
 
Merhaba,

Kod:
"provider=microsoft.jet.oledb.4.0;data source=" & ThisWorkbook.FullName & _
";extended properties=""excel 8.0;hdr=yes"""

şeklinde yazabilirsiniz.
 
Not: Data Source olarak bu kitabın yolunu ve adını vermem de pek mümkün değil, eğer öyle yaparsam sanırım dosyayı kaydedene kadar Sayfa2'de yaptığım değişiklikler sorgulama sonuçlarına yansımayacaktır.

Merhaba,
notunuzu şimdi farkettim. Kaydetmeseniz de o anki verileri sorgulayacaktır.
 
Aslında olmaz diye düşünüyordum ancak yine de denedim ve benim not olarak belirttiğim durumun oluşmadığını gördüm. Yani dosyayı kaydetmemiş olsam da Sayfa2'ye girdiğim ve sildiğim veriler güncel olarak sorgu sonucuna yansıyor.

Teşekkür ederim.
 
Evet, sizin de belirttiğiniz gibi veriler son haliyle listeleniyor.
 
Geri
Üst