24. august 2010 - 13:04Der er
4 kommentarer og 1 løsning
Valideringsregel driller
Jeg har et felt i en formular, hvor der ikke må tastes et allerede eksisterende nummer ind. Nummeret er tekst, og vil typisk være xxx xxx, altså 2x3 cifre med mellemrum
Jeg har lavet to forskellige valideringsregler, en med DCount og en med DLookUp og deligger på formularfeltets before update. DCount ser således ud
Dim VARa As String
VARa = Me.txtSkemaNr
If DCount("*", "tblSkemaNr", "SkemaNr=" & VARa) > 0 Then MsgBox "Skemanummeret er allerede i brug, vælg et andet." Me.Undo End If
Men jeg får en syntaxfejl. Jeg har lavet nøjagtig den samme i en testDB, der er Skemanummeret bare tal, og der virker det. Jeg går ud fra, at jeg mangler nogle ' eller ", men hvor ? jeg synes jeg er ved at have været alle kombinationer ignennem
Så prøvede jeg med DLookUp
If DLookup("[tblSkemaNr]=", "[Skemanr]=" & "me.txtSkemaNr") Then MsgBox "Skemanummeret er allerede i brug, vælg et andet." Me.Undo End If
Men igen syntaxfejl. Denne har jeg ikke prøvet i min testDB
Sluttelig. Kan man lave det således, at folk ikke kan aktivere en knap inden skemanummeret er gyldigt ?
"Sluttelig. Kan man lave det således, at folk ikke kan aktivere en knap inden skemanummeret er gyldigt ?
You could do this in a couple of ways.
Disable the button and then in the forms AfterUpdate event enable it again. You will also need to disable it at some stage, maybe in the On Current for when you move between records and/or On Dirty when you start making changes.
Tusind tak, den kombination, havde jeg ikke haft med.
Mht. til knappen, så puttede jeg den ind her, på feltets before opdate, og det virker tilsyneladende.
If DCount("*", "tblSkemaNr", "SkemaNr='" & VARa & "'") > 0 Then Me.cmdÅbnSkemaSkabelon.Enabled = False MsgBox "Skemanummeret er allerede i brug, vælg et andet." Me.Undo Else Me.cmdÅbnSkemaSkabelon.Enabled = True End If
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.