10. januar 2007 - 16:48Der er
8 kommentarer og 1 løsning
Formular skal skifter record ved fejl.
I en formular med 4 felter har jeg lavet et tjek, om det som bliver tastet ind fylder præcist 6 karakter. Hvis det som er indtastet ikke fylder 6 karakter kommer der en msgbox som oplyser at det indtastede ikke fylder 6 karakter. Hvis der er indtastet 6 karakter skal den gå ned til næste felt og det virker fint. Men hvis der er fejl i det indtastede, kommer der godt nok en msgbox men den skifter til næste record i formularen, er der nogen som kan hjælpe med at få den til at blive i den oprindelige record. Koden til det ovenstående er som følger:
Private Sub F_kode_LostFocus() If (Len(F_kode) < 6) Or (Len(F_kode) > 6) Then MsgBox "Koden er ikke på 6 karakter!" F_kode.SetFocus Else F_neddep.SetFocus
Private Sub F_kode_BeforeUpdate(Cancel As Integer) If Me.F_kode <> 6 Then MsgBox " Der skal indtastes 6 karakterer" Me.Undo End If End Sub
Synes godt om
Slettet bruger
11. januar 2007 - 08:16#2
Jeg ved ikke hvorfor men flg. virker!~)
Private Sub F_Kode_AfterUpdate() If (Len(F_Kode) < 6) Or (Len(F_Kode) > 6) Then MsgBox "Koden er ikke på 6 karakter!" F_Kode = Null F_neddep.SetFocus F_Kode.SetFocus
Else F_neddep.SetFocus
End If End Sub
Synes godt om
Slettet bruger
11. januar 2007 - 08:19#3
ellers er der jo også egenskaben for feltet, som hedder input mask. Her kan du skrive ######;;_
Selvfølgelig mangler Len. Me.undo fungerer fint, men er dog ikke nødvendig.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.