• DİKKAT

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

Soru ADO ile aynı sütunda çoklu seçim ile değer sorgulama

Katılım
22 Aralık 2005
Mesajlar
423
Excel Vers. ve Dili
Microsoft 365
Arkadaşlar merhaba,

ADO ile verileri kaydettiğim access veritabanının SUREKLI_ZIYARETCILER tablosunda yer alan FIRMAADI sutunundaki sadece BIRINCI, IKINCI ve UCUNCU isimli degerleri listbox a almak istiyorum. Normal şartlarda AND operatörü ile farklı gereklilikler üzerinde çalışma yapmış ve sonuç almıştım ancak OR operatörü ile hiç çalışmamıştım ve sanıyorum aşağıdaki sql satırında bir hata yapıyorum. Bir fikri olan varsa ve paylaşırsa şimdiden çok teşekkür ediyorum.


Kod:
tanimlanan = "SELECT [FIRMAADI] FROM  [SUREKLI_ZIYARETCILER] WHERE [FIRMAADI] ='" & BIRINCI & "' OR FIRMAADI ='" & IKINCI & "' OR FIRMAADI ='" & UCUNCU & "' "
 
Kod:
WHERE [FIRMAADI] in ('BIRINCI','IKINCI','UCUNCU')"
şeklinde dener misiniz?
 
Benim anladığım BIRINCI, IKINCI ve UCUNCU değişken adları.

Sorunlu denilen SQL benim yaptığım denemede çalıştı...

Diğer yandan; Sn. Şahin'in alternatifinde ise bu değişkenleri aşağıdaki gibi bir diziye bunları aktardıktan sonra IN operatörünü kullanmak gerekir;

Değişkenlerin orjinal çalışmada nasıl doldurulduğunu bilemiyorum, onun için ben sembolik olarak atama yaptım.....

C++:
    Dim myArr(1 To 3)
 
    BIRINCI = "Firma4"
    IKINCI = "Firma7"
    UCUNCU = "Firma2"
 
    myArr(1) = Chr(34) & BIRINCI & Chr(34)
    myArr(2) = Chr(34) & IKINCI & Chr(34)
    myArr(3) = Chr(34) & UCUNCU & Chr(34)
 
 
    strSQL = "Select [FIRMAADI] From [SUREKLI_ZIYARETCILER] Where [FIRMAADI] In (" & Join(myArr, ",") & ")"

.
 
Son düzenleme:
Mehmet Bey ve üstat Haluk Bey ilgi ve desteğiniz için teşekkür ederim. Haluk Hocamın kodları ile işimi gördüm, elinize emeğinize, yüreğinize sağlık
 
Merhaba.

Açılmış bu konu ile ilgili şöylesi bir sorum olacak. Aşağıda görünen sorgu kendi dosyamda çalışıyor. Ancak excel sayfası üzerinden sorgu yapıyorum ve verileri listview e yüklüyorum. Ancak IN özelliğinden yararlanırken birden fazla textboxtan yararlanıyorum. IN özelliğini değişen parametre sayısına daha pratik nasıl kullanabilirim.

Kendi dosyamda örneğin para birimi olarak TL USD ve EUR kullanıyorum. Bunun için 3 ayrı textbox kullanmaktayım. Para birimi sayısı artarsa textbox eklemek zorunda kalacağım. Bunun önüne geçmek için daha pratik bir kod yapısına ihtiyacım varken bu konuya rastladım. Bunu yapmak mümkün mü?


Kod:
      My_Query = "Select [Stok_Kodu],[Stok_Tanımı],[İşlem Tipi],[Ticari Unvan],[Tarih],[Departman],[Fiyat],[KDV Türü] From [Veri$A:AR] Where [Tarih] >=  " & CLng(First_Date) & " And [Tarih] <= " & CLng(Last_Date) & " And [Ana_Grup] >=  " & com5 & " And   [Ana_Grup] <= " & com6 & "" & _
      " And [Departman] In ('" & TextBox10 & "' , '" & TextBox11 & "' , '" & TextBox12 & "' , '" & TextBox13 & "' , '" & TextBox14 & "' , '" & TextBox15 & "' , '" & TextBox16 & "' , '" & TextBox17 & "' , '" & TextBox18 & "' , '" & TextBox19 & "') " & _
      " And [İşlem Tipi] In ('" & TextBox30 & "' , '" & TextBox31 & "' , '" & TextBox32 & "' , '" & TextBox33 & "' , '" & TextBox34 & "' , '" & TextBox35 & "' , '" & TextBox36 & "' , '" & TextBox37 & "' , '" & TextBox38 & "' , '" & TextBox39 & "') " & _
      " And [KDV Türü]  In ('" & TextBox50 & "' , '" & TextBox51 & "' , '" & TextBox52 & "' , '" & TextBox53 & "') " & _
      " And [Para Birimi] In ('" & TextBox60 & "' , '" & TextBox61 & "' , '" & TextBox62 & "') " & _
      " And [Lokasyon] In ('" & TextBox70 & "' , '" & TextBox71 & "' , '" & TextBox72 & "') "
 
Geri
Üst