Avatar billede yxos Nybegynder
13. januar 2007 - 14:30 Der er 2 kommentarer og
1 løsning

If FeltNavn = Null then - virker ikke

Ja, det burde være ligetil, men jeg kan ikke få det til at virke.

Jeg har en tabel:
Felt1    Tekst
Felt2    Tekst
Felterne er enten blanke, eller inderholder en URL

...og en Form med en kontrol til hvert af felterne, + en 2 knapper:
cmdKnap1
cmdKnap2

Når man trykker på en knap, skal der åbnes en browser, på adressen angivet i det tilsvarende felt. Undtagen når feltet er tomt, så skal knappen inaktiveres.

Derfor denne kode :

Private Sub Form_Open(Cancel As Integer)
    If Felt1 = Null Then
      Me.cmdKnap1.Enabled = False
    Else
      Me.cmdKnap1.Enabled = True
      Me.cmdKnap1.HyperlinkAddress = Felt1
    End If
End Sub

Problemet er, at Felt1 tilsyneladende aldrig er Null!
Uanset værdien i Felt1, så kan jeg via debug se, at den ALTID går i ELSE sætningen. Også selvom jeg kan se at Felt1 faktisk ER Null!

Det gør, at når Felt1 er tomt, så får jeg en fejl; "Invalid use of 'Null'" for
Me.cmdKnap1.HyperlinkAddress = Felt1.

Klart nok, den kan ikke sætte adressen til ingenting.

Men hvorfor virker If'en ikke ?
Avatar billede kjulius Novice
13. januar 2007 - 15:15 #1
Når du tester et felt for null skal du bruge funktionen IsNull:

Private Sub Form_Open(Cancel As Integer)
    If IsNull(Felt1) = True Or Felt1 = "" Then
      Me.cmdKnap1.Enabled = False
    Else
      Me.cmdKnap1.Enabled = True
      Me.cmdKnap1.HyperlinkAddress = Felt1
    End If
End Sub
Avatar billede yxos Nybegynder
13. januar 2007 - 16:23 #2
Simpelthen!
Smid et svar :-)
Avatar billede kjulius Novice
13. januar 2007 - 17:41 #3
Okey, dokey... :-)
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