AccessTr.neT

Tam Versiyon: Vba İle Oluşturulan Sql Metninde "%" Karakterinin Kullanımı.
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2 3 4 5
Gifi izleyiniz aceleden tam deneyememiştim.

Do Until ys2.EOF
    Liste1.AddItem ys2("F1").Value
    ys2.MoveNext
Loop

Önceki döngüyü yukarıdaki ile değiştirdim.
Sonuçta % yerine * kullanılmış oldu sorgu içinde.



[Resim: do.php?img=9526]
Private Sub Komut0_Click()

Dim ys2 As dao.Recordset

For z = Liste1.ListCount - 1 To 0 Step -1
    Liste1.RemoveItem (z)
Next z
metin = Metin3.Text
harf = "a b c ç d e f g ð h i ý j k l m n o ö p r s þ t u ü v y z"
harf = Split(harf, " ")
For i = 0 To UBound(harf)
If InStr(1, metin, harf(i)) = 0 Then
yharf = yharf & harf(i)
End If
Next

xx = "Select* From kelime Where F1 not Like '*[" & yharf & "]*'"

Set ys2 = CurrentDb.OpenRecordset(xx)


Do Until ys2.EOF
    Liste1.AddItem ys2("F1").Value
    ys2.MoveNext
Loop

End Sub

Private Sub Metin3_Change()
    Komut0_Click
End Sub
Ayrıca döngü ile listboxu temizlemeye gerek yok.

For z = Liste1.ListCount - 1 To 0 Step -1
  Liste1.RemoveItem (z)
Next z


yerine
Liste1.RowSource = "" yazabilirsiniz.
Çok ilginç !!!!!!!!!!!!!!!!!!
"*" karakteri kullanarak oluşturulan aynı Sql metni; Ado ile seçilen harfleri içeren, Dao ile ise seçilen harflerden oluşan kelimeleri listeliyor.
Ben bir excelde normal * olarak bir listeleteyim bakalım orda nasıl sonuç olacak DAO gibimi bakalım
Yani normal Vba kodu ile Sql siz
(04/02/2020, 19:47)alicimri yazdı: [ -> ]Çok ilginç !!!!!!!!!!!!!!!!!!
"*" karakteri kullanarak oluşturulan aynı Sql metni; Ado ile seçilen harfleri içeren, Dao ile ise seçilen harflerden oluşan kelimeleri listeliyor.
Ado ile alttaki gibi kod yaptım DAO ile arasında fark olmadı.Sonuç aynı ikisindede.

Private Sub Komut0_Click()

Dim ys2 As New ADODB.Recordset

Liste1.RowSource = ""

metin = Metin3.Text

harf = "a b c ç d e f g ð h i ý j k l m n o ö p r s þ t u ü v y z"

harf = Split(harf, " ")
For i = 0 To UBound(harf)
If InStr(1, metin, harf(i)) = 0 Then
yharf = yharf & harf(i)
End If
Next

sorgu = "Select * From kelime Where F1 Not Like '%[" & yharf & "]%'"
ys2.Open sorgu, CurrentProject.Connection, adOpenKeyset, adLockOptimistic

Do Until ys2.EOF
    Liste1.AddItem ys2("F1").Value
    ys2.MoveNext
Loop

End Sub

Private Sub Metin3_Change()
    Komut0_Click
End Sub
ADO ile DAO farklı sonuç "*" karakterini kullanınca ortaya çıkıyor.
Sayfalar: 1 2 3 4 5