• DİKKAT

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

Sql Like kullanımı

Katılım
24 Temmuz 2007
Mesajlar
726
Excel Vers. ve Dili
Excel 2010 tr
Merhaba
Ekteki dosyada G1 hücresine yazılacak bölge kodlarını içeren satırları J1 hücresinden itibaren yazdırmak için uğraşıyorum,

* Bunun için Sql kullanıyorum çünkü orjinal tabloda Sum işlemide yapmam gerekiyor

* Like kullanmam lazım çünkü gerçekte G1 hücresine girilen kod sayısı 9 kadar oluyor, ama sanırım Like yanlış kullanıyorum

* Kitabın modul kısmında ADO bağlantısı kodları var, sadece gerekli sql kodu yazılacak

Yardımcı olurmusunuz
 

Ekli dosyalar

Merhaba,

Bağlantınızı anlamamakla birlikte sql yapınızın şöyle olması gerektiğini düşünüyorum.

LIKE değil IN kullanmalısınız.

Kod:
Sub sql()
Dim sql     As String, _
    sql1    As String, _
    d()     As String, _
    i       As Integer
    
    d = Split(Trim(Range("G1")), ",")
    sql1 = "IN ("
    
    For i = 0 To UBound(d)
        sql1 = sql1 & "'" & d(i) & "'" & ","
    Next i
    
    sql1 = sql1 & ")"
    sql1 = Replace(sql1, ",)", ")")
    
  sql = "SELECT * " _
            & "FROM [Sayfa1$A1:C9751] " _
            & "WHERE KOD " & sql1
Call Excel_Baglan(sql, ThisWorkbook.FullName, "J1")
End Sub
 
sayın necdet bey yukarıdaki kodlara göre in kullanıncada sonuç döndürmüyor
sizde deneyebilirmisiniz.
Teşekkürler
 
Merhaba,

Sizin G1 hücresine yazdığınız değerler Kod değerleri değil mi?

eğer onlar kod değerleri ise IN kullanmalısınız. Ama dediğim gibi ado bağlantısını anlamadım, daha doğrusu ben sayfa üzerinde hiç kullanmadım. Ben size sql tarafını bildiğim kadarı ile açıkladım.

Ayrıca dosyanızdaki kodları çalıştırdığımda zaten hiç bir değer döndürmüyor.
 
Tekrar mrb,
sql'i
sql = "SELECT * " _
& "FROM [Sayfa1$A1:C9751] "
şeklinde hiç şart belirtmeden yazarsak sonuç döndürüyor
(= şeklinde denemelerdede sonuç döndürüyor)

yani ADO bağlantısında sorun yok
şartla ilgili sıkıntı var,
aslında haklısınız Like ile olabileceği gibi IN ilede olması lazım ama problem nerde anlayamadım
desteklemiyor olamaz herhalde değilmi
 
Merhaba,

= (eşittire) bir örnek sql yazabilir misiniz?
 
Merhaba,

KOD un 0160204 e eşit olduğu ber sql tümcesi yazar mısınız?
 
merhaba;
ekli dosyayı inceleyiniz.(Accesste çözümlendi)
 

Ekli dosyalar

Merhaba,

Bende dosyanız çalışmıyor, Ben KOD için nasıl kontrol yapılacağını anlamadım.
 
Tekrar Merhaba,


Dosyayı inceler misiniz?

SQL önceki mesajımda olduğu gibi.
 

Ekli dosyalar

Sayın Necdet bey,
IN ile oluyor haklısınız, çok teşekkür ederim

Sayın excel03 yanlış dosya eklemiş olabilirmisiniz
 
Geri
Üst