Veri tabanındaki kayıtların sıralaması

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,256
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Merhaba,
Veri tabanındaki verilerin sıralamasını tablodaki kayıt sırasına göre almak istiyorum. "MoveFist" komutunun kullanımı nasıl olmalı.

Kod:
Sub xxx()
    Dim dbs As Database, rst As Recordset
    
    Set dbs = OpenDatabase("C:\Documents and Settings\zgry\Desktop\vt1.mdb")

    Set rst = dbs.OpenRecordset("SELECT * FROM Tablo1")
    
    rst.MoveFirst ' İlk kayıta geçemiyoruz.
    
    Do While Not rst.EOF
    s = s + 1
    Cells(s, 1) = rst!Ad
    Cells(s, 2) = rst!tut
    rst.MoveNext
    Loop

    dbs.Close


End Sub
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
rst.MoveFirst en başa gitmek istediğiniz tablonuz boşsa hata vermesi muhtemeldir fakat bunun dışında bir hata ile karşılaşıyorsanız aldığınız hatanın ne olduğunu numarası ile birlikte söylerseniz yardımcı olmaya çalışırım.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,256
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Hata almıyorum. Verileri, tablodaki sıra düzeniyle almak istiyorum sadece.
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
Özür dilerim ben MoveFirst ile ilgili bir probleminiz olduğunu sanmıştım.
Öncelikle şunu söyleyeyimki sizin probleminizin MoveFirst ile ilgisi yok çünkü bu komut imleci tablonuzun başına konumlandırır.

Probleminizin çözümü için aklıma bir tek şey geliyor, tablonuzu oluştururken alfabetik sıralama yaptırmış olabilirsiniz. Tablonuzu tasarım görünümünde açın ve özellikler penceresinden sıralama yapılıp yapılmadığını kontrol edin eğer sıralama yapılmışsa kaldırın.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,256
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
İlginiz için teşekkürler.
Dediğiniz özelliği kontrol ettim, sıralı değil. Ayrıca tablom da sıralı değil. Neden en son kayıttan başlayarak geriye doğru veri getirdiğini hala çözemedim.
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
Sayın Anemos gerçekten ilginç bir şey

o zaman bizde işlemi tersten yaparak çözmeye çalışalım

MoveFirst yerine MoveLast

MoveNext yerine MovePrevious deneyin bakalım ne olacak.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,256
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Hata iletisi geldi. İçeriği : "Run-time error '1004' Geçerli kayıt yok."

Sanırım en iyi sayfaya getirdikten sonra sıralama olacak. Ama bir çözümü varsa da onu da merak ediyorum.
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
Sayın Anemos
Son bir önerim daha var. Access dosyanız bozulmuş olabilir mi?
Access dosyanızdaki verileri yeni bir access dosyasına alın ve deneyin.

Olmuyorsa
Access dosyanızı sıkıştırarak eklerseniz elimden geleni yapmaya çalışırım.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,256
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Sorun çözüldü.

Sayın Anemos
Son bir önerim daha var. Access dosyanız bozulmuş olabilir mi?
Access dosyanızdaki verileri yeni bir access dosyasına alın ve deneyin.
Çok teşekkür ederim. Öneriniz işe yaradı ve sorun çözüldü.
 
Katılım
15 Şubat 2006
Mesajlar
23
Altın Üyelik Bitiş Tarihi
19-04-2022
Set rst = dbs.OpenRecordset("SELECT * FROM Tablo1")
buraya şunu ekliyoruz order by ... asc

Set rst = dbs.OpenRecordset("SELECT * FROM Tablo1 order by SIRALAMAK_İSTEDİĞİN_SUTUN_İSMİ ASC")
 
Üst