bu yol genel olarak kullanılan yol değildir 
doğrusu budur kodun ilgili kısmını  aynen değiştir
	Kod:
	
		Private Sub Form_Current()
Dim rst As DAO.Recordset
 Set rst = Me.RecordsetClone
 
 'son kayda gitki toplam kaydı alabilleeim
 rst.MoveLast
 ' rst nin bu formun kayıtlarına dayandığını belirtiyoruz
 rst.Bookmark = Me.Bookmark
 Me.txtToplamKayit = Me.CurrentRecord & " de " & rst.RecordCount[hr]
aslında doğru navigation kodu bu şekilde olmalı
Private Sub Form_Current()
Dim rst As DAO.Recordset
 
On Error GoTo ERRORForm_Current
    Dim strErrMsg As String
 
 ' default olarak düğmelerin durumu
 Me.ilk.Enabled = True
 Me.önceki.Enabled = True
 Me.sonraki.Enabled = True
 Me.son.Enabled = True
 Set rst = Me.RecordsetClone
 
 rst.MoveLast
 rst.Bookmark = Me.Bookmark
 
 If rst.AbsolutePosition = 0 Then
    Me.ilk.Enabled = False
    Me.önceki.Enabled = False
 End If
 
 If Me.CurrentRecord >= Me.RecordsetClone.RecordCount Then
    Me.sonraki.Enabled = False
    Me.son.Enabled = False
 End If
 Me.kayitno.Caption = Me.CurrentRecord & " de " & rst.RecordCount
 rst.Close
 Set rst = Nothing
 
 
ERRORForm_Current_exit:
        On Error Resume Next
        Exit Sub
        
ERRORForm_Current:
        Select Case Err
        Case 3021
            Resume Next
        Case Else
            strErrMsg = strErrMsg & "Error #: " & Format$(Err.Number) & vbCrLf
            strErrMsg = strErrMsg & "Error Description: " & Err.Description
            MsgBox strErrMsg, vbInformation, "Kayda gidiyorsun"
            Resume ERRORForm_Current_exit
        End Select
 
End Sub
Private Sub ilk_Click()
On Error GoTo Err_ilk_Click
    Me.Recordset.MoveFirst
    
Exit_ilk_Click:
    Exit Sub
Err_ilk_Click:
    MsgBox Err.Description
    Resume Exit_ilk_Click
    
End Sub
Private Sub önceki_Click()
On Error GoTo Err_önceki_Click
     Me.Recordset.MovePrevious
    
Exit_önceki_Click:
    Exit Sub
Err_önceki_Click:
    MsgBox Err.Description
    Resume Exit_önceki_Click
    
End Sub
Private Sub sonraki_Click()
On Error GoTo Err_sonraki_Click
    Me.Recordset.MoveNext
    
Exit_sonraki_Click:
    Exit Sub
Err_sonraki_Click:
    MsgBox Err.Description
    Resume Exit_sonraki_Click
    
End Sub
Private Sub son_Click()
On Error GoTo Err_son_Click
    Me.Recordset.MoveLast
    
Exit_son_Click:
    Exit Sub
Err_son_Click:
    MsgBox Err.Description
    Resume Exit_son_Click
    
End Sub
Private Sub cmdNew_Click()
On Error GoTo Err_cmdNew_Click
    DoCmd.GoToRecord , , acNewRec
    
Exit_cmdNew_Click:
    Exit Sub
Err_cmdNew_Click:
    MsgBox Err.Description
    Resume Exit_cmdNew_Click
    
End Sub
Private Sub cmdClose_Click()
On Error GoTo Err_cmdClose_Click
    DoCmd.Close
Exit_cmdClose_Click:
    Exit Sub
Err_cmdClose_Click:
    MsgBox Err.Description
    Resume Exit_cmdClose_Click
    
End Sub
Private Sub cmdDelete_Click()
    On Error GoTo Err_cmdDelete_Click
   
 If MsgBox("kayıt silinecekmi?", vbYesNo + vbDefaultButton2, "Not!") = vbNo Then
    Exit Sub
 End If
 
    Me.Recordset.Delete
    Me.Requery
    MsgBox "Uyarı", , "Kayıt silindi"
Exit_cmdDelete_Click:
    Exit Sub
Err_cmdDelete_Click:
    Select Case Err
    Case 3021
        MsgBox "böyle bir kayıtyok"
        Resume Exit_cmdDelete_Click
    Case Else
        Dim msgStr As String
        msgStr = CStr(Err) & " " & Description
        MsgBox msgStr
        Resume Exit_cmdDelete_Click
    End Select
End Sub
	
 
				
				
			 
			
			
			
	meşhur çin atasözü  "ACCESS İLE YAPABİLECEKLERİNİZ HAYAL EDEBİLECEKLERİNİZ İLE SINIRLIDIR" siz ne kadar hayal edebiliyorsunuz
			
				
Cevapla
	
			
			
Son Düzenleme: 22/04/2009, 18:57, Düzenleyen:  esrefigit.