02. juni 2005 - 04:45Der er
6 kommentarer og 1 løsning
Problemer med If sætning
hej jeg har et problem med en If sætning hvor jeg skal tjekke på på en dato, jeg skal tjekke at der ikke står 00-00-0000 i feltet txtAnsat. jeg har prøvet at skrive
I = Len(txtAnsat.Text) If I = 00-00-0000 Then MsgBox "Ansættelsesdato skal skrives på følgende måde dd-mm-yyyy.", vbExclamation + vbOKOnly, "Ansættelsesdato'en er ikke indtastet Korekt" txtAnsat.SetFocus Exit Sub End If
men så skriver de 0 - 0 - 0 istedet for 00-00-0000 jeg har også prøvet med '00-00-0000' og så siger den bare Expected: expression og jeg har prøvet med "00-00-0000" men det virker ikke. nogen der kan fortælle mig hvad jeg så skal skrive for at det virker.
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Nu indeholder I antallet af tegn i det tekst, der står i text1.text. Har du skrevet "00-00-0000" indeholder I altså tallet 10, da der er 10 tegn i teksten
Du skriver: If I = 00-00-0000 Then
Du sammenligner herover æbler og bananer, og det kan man ikke. VB vil opfatte 00-00-0000 som en variabel (med et åndsvagt navn), og ikke som noget tekst. Altså sammenligner du en variabel I indeholdene værdien 10 med en tom variabel ved navn 00-00-0000.
Vil du sammenligne med teksten 00-00-0000, skal du bruge " før at VB opfatter det som tekst i stedet for en tom variabel. Husker du ", er det dog stadig pærer og bananer du sammenligner: En variabel med værdien 10 sammenlignes med noget tekst.
Så alt i alt er det noget nonsens, du har i di9ne første to linier kodee, og du skal slet ikke bruge Len() til noget som helst.
Brug svar fra sjh eller nielle, og drop linien med Len(text1.text)
Godt råd:
Brug "require variable declaration" (sættes under options) - så vil VB f.eks. i ovenstående tilfælde fortælle dig, at du bruger en variabel med navnet 00-00-0000, men at den ikke er oprettet (ved Dim 00-00-0000 as ....). Og så tænker du "Aha - det er jo helt forkert det jeg skriver her"
Du skal stadig ikke bruge I = Len(txtAnsat.Text) til noget i din kode...
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.