• DİKKAT

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

Adodb İle Kayıtlar Arasında gezinme

Katılım
26 Mayıs 2005
Mesajlar
609
Excel Vers. ve Dili
Office 2022 - Türkçe
Herkese merhaba arkadaşlar,

Daha önce DAO kullanıyordum ve kayıtlar arasında gezinirken bir sıkıntı çıkmıyordu. Şimdi bazı nedenlerden dolayı ADO kullanmak zorundayım ve kayıtlar arasında gezinemiyorum. Ekteki dosya içerisinde excel dosyasını açtığınızda butona bastığınızda form açılacak formdan bul deyinde ikinci form açılacak burda herhangibir veriyi çift tıklatıp seçiyorum. Sonra tekrar form1'e dönüyor. Burada ileri geri yaptığım zaman hep uyarı mesajına düşüyor.

Not:Tools ==> Referanslardan Microsoft ActiveX DataObject 2x Library seçeniğini bulup işaretlemniz gerekir
 

Ekli dosyalar

Herkese merhaba arkadaşlar,

Burada ileri geri yaptığım zaman hep uyarı mesajına düşüyor.

Bu normal çünkü; aşağıda verilen kodunuzdaki sorguya uygun olan veri tabanındaki kayıtlar UserForm1'de görüntüleniyor.

Kod:
SQLStmt = "SELECT * From STK_AMB_TNT WHERE (((Ambar_Kodu_1) ='" & txtAmbarKodu1.Text & "') And ((Ambar_Kodu_2) ='" & txtAmbarKodu2.Text & "') And ((Ambar_Kodu_3) ='" & txtAmbarKodu3.Text & "'));"
UserForm2'deki ListBox'da yer alan veriler incelendiğinde; Ambar_Kodu_1, Ambar_Kodu_2 ve Ambar_Kodu_3 değerleri birlikte göz önüne alındığında, bütün veriler benzersiz olduğu için, başka kayıt bulunamıyor.

Örneğin; Ambar_Kodu_1 ve Ambar_Kodu_2 aynı olan ama Ambar_Kodu_3 kodu değişik olan veriler var. Siz "İleri" ve "Geri" butonlarındaki SQL sorgunuzdan Ambar_Kodu_3 kısmını çıkartırsanız, o zaman geriye dönen sorgu sonucunda 1'den fazla kayıt olacağı için bu kayıtlar arasında dolaşabilirsiniz.

Artık gerisi, sizin ne yapmak istediğinize bağlı.

.
 
Haluk bey merhaba,

daha önce kullandığım kod aşağıd. DAO da seek komutu ile bunu yapabiliyordum. ADO ise biraz sıkıntılı. İnternette araştırdım ama net bir sonuca ulaşamadım. Benim yapmak istediğim 8-02-005 ambarını seçip geri dediğimde 8-02-004 abmarına ileri değimde 8-03-001 ambarına gitmesi ve böyle devam etmesi.


Kod:
Set TBLSTK_AMB_TNT = MyData1.OpenRecordset("STK_AMB_TNT", dbOpenTable, dbREADONLY)
    TBLSTK_AMB_TNT.Index = "PrimaryKey"
    TBLSTK_AMB_TNT.Seek "=", txtAmbarKodu1.text, txtAmbarKodu2.text, txtAmbarKodu3.text
    If TBLSTK_AMB_TNT.NoMatch Then
    Else
       TBLSTK_AMB_TNT.MovePrevious
       If TBLSTK_AMB_TNT.BOF Then
          MsgBox "Başka Kayıt Yok"
          TBLSTK_AMB_TNT.Close
          Exit Sub
       End If
       txtAmbarKodu1.text = TBLSTK_AMB_TNT("Ambar_Kodu_1")
       txtAmbarKodu2.text = TBLSTK_AMB_TNT("Ambar_Kodu_2")
       txtAmbarKodu3.text = TBLSTK_AMB_TNT("Ambar_Kodu_3")
       txtAmbarAdı.text = TBLSTK_AMB_TNT("Ambar_Adi")
    End If
TBLSTK_AMB_TNT.Close
 
Arkadaşlar yardımcı olabilecek biri varmıdır.
 
Geri
Üst