2009-10-12 2 views
0

J'ai écrit la requête suivante:question AvantMAJ - Erreur d'exécution 2115

Private Sub Size_Sqft_BeforeUpdate(Cancel As Integer) 
    Me!Size_Sqft = Nz(Me!Size_Sqft, 0) 
End Sub 

Mais tout en enlevant le zéro dans le champ pour la rendre nulle, je reçois l'erreur suivante:

Runtime error 2115

Macro and function set to before update and validation rule property for this field is preventing manual data entry screen for company from saving the data in the field.

Répondre

2

Vous devez mettre ce code dans l'événement AfterUpdate de ce champ.

1

Je sais qu'il s'agit d'un ancien thread, et il a déjà été répondu, mais il existe une autre solution qui ne nécessite pas plusieurs écritures dans votre base de données. Je l'ajoute au cas où quelqu'un d'autre rencontrerait cette question.

Private Sub ControlName_BeforeUpdate(Cancel as integer) 
    If isValid(Me.ControlName.Value) = False Then 
     Cancel = True 
     Me.ControlName.Undo 
    End If 
End Sub 

Private Function isValid(ByVal...) as boolean 
    ' validate control value here 
End Function