Delete problemi

02/12/2010, 18:15

nsahin

Ek dosyadaki form formundaki sil butonuna bastığımda son 5 kayıt kalacak ve diğer kayıtları silecek. bunu yapamadım yardımcı olabilir misiniz? İyi çalışmalar.
02/12/2010, 18:29

alpeki99

Sil isimli butonun tıklanma olayı aşağıdaki gibi olursa kayıtları son beşi hariç silecektir.


Private Sub Sil_Click()
On Error Resume Next
Dim sayi As Integer
Dim rst As ADODB.Recordset

' Kaç tane kayıt olduğunu saysın
sayi = CurrentDb.OpenRecordset("tablo").RecordCount


Set rst = New ADODB.Recordset

rst.ActiveConnection = CurrentProject.Connection
rst.CursorType = adOpenDynamic
rst.CursorLocation = adUseClient


rst.Open "tablo", , adOpenKeyset, adLockOptimistic, adCmdTable

For i = 1 To sayi - 5

rst.MoveNext
Me.Bookmark = rst.Bookmark
'DoCmd.SetWarnings False
DoCmd.RunCommand acCmdDeleteRecord
'DoCmd.SetWarnings True
' Eğer kayıt silerken uyarı almak istemiyorsanız SetWarnings olan iki satırdaki tek tırnak işaretini silin
Next i

rst.Close


End Sub
02/12/2010, 18:47

nsahin

sayın Alpeki hata veriyor.
02/12/2010, 18:48

alpeki99

Hata nedir? Yukarıdaki kodların hepsini birden butonun tıklanma olayına yapıştırmadınız değil mi? Yukarıdaki kodda butonun tıklanma olayının tüm kodları var. Siz ilk ve son satır hariç hepsini yapıştıracaksınız.
02/12/2010, 20:02

ozanakkaya

Sanırım problemi "Microsoft ActiveX Data Objects 2.X library" referansını eklememesi.
03/12/2010, 09:35

nsahin

herkese çok teşekkür ederim.