16. september 2004 - 08:02Der er
7 kommentarer og 2 løsninger
Fejlmeddelelse ved indtastning
Hejsa,
Jeg har en form, hvor jeg kan oprette en post. Når jeg opretter en post som ikke er gyldig, f.eks. fordi navnet på den post jeg opretter allerede eksiterer, så lukker formen bare uden at fortælle at der var en fejl, eller hvad fejlen var.
Du kan lave en errorhandler i formularens BeforeUpdate:
OnError MsgBox Err.Number & Err.describtion
Jeg kan ikke lige huske den korrekte syntaks (Har ikke Access på denne maskine). Hvis du vil tælle om den nye post allerede eksisterer, kan du bruge funktionen DCount med et kriterie der refererer til et felt på formularen.
Hvis der ikke er fejl forlader du jo blot procedüren, ellers viser den fejlnr og beskrivelse.
Men når du skriver, at det ikke fungerer, får du så nogen andre meddelelser? En mulighed kan være, at du et andet sted i din applikation, har anvendt DocmdsetWarnings false, uden at sætte dem til true igen.
Jeg prøver at fremprovokere en fejl, og det virker ikke. Tabellen som formen gemmer i, den har et felt med navn i, som er unikt. Hvis jeg tilføjer en ny post via formen med samme navn, så lader den bare være med at gemme, men afslutter formen. Uden jeg får en fejlmeddelelse.
Private Sub Firmanavn_BeforeUpdate(Cancel As Integer) If DCount("*", "T_Firma", "[Firmanavn]= '" & Me.Firmanavn & "'") > 0 Then MsgBox Prompt:="Der er allerede en post med dette firmanavn.", Title:="Posten kan ikke oprettes", Buttons:=vbCritical Me.Undo End If End Sub
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.