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.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
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.