Avatar billede Kim Neesgaard Seniormester
30. september 2001 - 14:25 Der er 6 kommentarer og
3 løsninger

Undertrykkelse af Access fejlbesked

Hvordan kan man forhindre, at Access giver en fejlbesked ved fx. indtastning af \'a\' i et numerisk felt (så man selv kan håndtere fejlen)? SetWarnings=False forhindrer ikke Access i at give sin egen ramme med fejlbesked.
Avatar billede terry Ekspert
30. september 2001 - 14:46 #1
look at the on error event!
Avatar billede terry Ekspert
30. september 2001 - 14:47 #2
Example taken from HELP

Private Sub Form_Error(DataErr As Integer, Response As Integer)
    Const conDuplicateKey = 3022
    Dim strMsg As String

    If DataErr = conDuplicateKey Then
        Response = acDataErrContinue
        strMsg = \"Each employee record must have a unique \" _
            & \"employee ID number. Please recheck your data.\"
        MsgBox strMsg
    End If
End Sub
Avatar billede juks Novice
30. september 2001 - 18:34 #3
hej !
det nemmeste må vel være at skrive

on error goto errdesc

errdesc:
if err.number = 3022 then
msgbox \" du har lavet en fejl\"
Avatar billede juks Novice
30. september 2001 - 18:35 #4
fortsat..
msgbox \" du har lavet en fejl\" 
else
err.description
end if
30. september 2001 - 21:23 #5
Hej Kim,

Lige præcis dit eget eks med at skrive tekst i et numerisk felt kan fanges således:

Private Sub Form_Error(DataErr As Integer, Response As Integer)
  Select Case DataErr
      Case 2113
        MsgBox \"Din egen fejlmeddelelse..!\", vbCritical
        \'noget mere kode her
        Response = acDataErrContinue
      Case Else
        MsgBox DataErr & vbNewLine & Error(DataErr)
  End Select
End Sub

DataErr=2113 er den fejl, der opstår, når man skriver tekst i et numerisk felt.

/Thomas
Avatar billede terry Ekspert
01. oktober 2001 - 13:37 #6
Hi neesgaard>
What it all boils down to is that you can use the forms \"On Error\" event, \"så du selv kan håndtere fejlen\"
Avatar billede nih Novice
01. oktober 2001 - 23:14 #7
Jeg er ingen specialist i programmering, men har læst en del bøger om emnet, og de er alle enige om at man bør fange de fleste og mest sansynlige error\'s direkte i koden:

I dit tilfælde kan funktionen \'IsNumeric(var)\' bruges.

Jeg ved ikke om det er svaret du \'fisker\' efter. Emnet er ret omfattende og man kan gøre en masse ud af sin errorhandling med logfiler osv.

Niels
Avatar billede nih Novice
01. oktober 2001 - 23:18 #8
IsNumeric kan bruges sådan:

if IsNumeric(txtBoks.value) = false then exit sub

Eller hvad man nu synes !!!!!!.

Niels
Avatar billede Kim Neesgaard Seniormester
22. september 2002 - 14:14 #9
Undskyld denne ikke er blevey afsluttet før!

Nu har jeg indsat Form_Error forslaget - det virker perfekt! Tak!
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester