Archiv verlassen und diese Seite im Standarddesign anzeigen : Prüfen ob Variable gesetzt ist
USSEraser
20.09.2002, 18:36
Hallo
Ich möchte eine Funktion schreiben, die als optionales Argument ein Steuerelement enthält, das den Status der Funktion auszugeben. Also etwa so:
Function Test (Optional Anzeige as Label)
...
Anzeige = Status
...
Funktioniert ja wunderbar, doch wenn die Variable nicht gesetzt ist, gibt es einen Fehler. Abfragen auf If Anzeige = Nothing geht auch nicht.
:confused:
fabian ackle
20.09.2002, 18:54
if anzeige = ""
sollte gehen
mfg
fabian
USSEraser
20.09.2002, 19:05
Objektvariable oder With-Blockvariable nicht festgelegt (Fehler 91)
Die Variable ist ja dann nicht wirklich da, also kann ich sie auch nicht mit "" vergleichen. Es muss eine Funktion geben, mit der ich prüfen kann, ob sie da ist.
Zwei Ideen:
if DeineVariable Is Nothing then ...
oder
if IsEmpty(DeineVariable) then ...
Ich glaub aber, dass die erste funktionieren müsste.
USSEraser
25.09.2002, 20:09
1. Geht, 2. nicht.
Vielen dank :)
Bitteschön :p! Hatte mir schon gedacht, dass Nr. 2 nicht funktioniert, aber hörte sich so ähnlich an. Wichtig ist halt nur, dass du anstelle von "=Nothing" "Is Nothing" schreibst. Warum MS das so gemacht hat..? Keine Ahnung.
USSEraser
26.09.2002, 23:09
Naja, das macht ungefär so viel Sinn wie die Unterscheidung zwischen Let und Set.
Bei VB .net haben die das ja angeblich abgeschafft.
Nee, zwischen Let und Set gibt's ja wohl nen klaren Unterschied und der wäre... ähm... äh... fällt mir gerade glaub ich nicht ein. Schon lange keine Klassen mehr geschrieben (die letzte vor ca. 2 Wochen, aber mit öffentlichen Variablen und nicht mit Property-Funktionen) :rolleyes: :mauer:
DarkTemplar
28.09.2002, 12:09
Da kann ich weiterhelfen *g*.
Der Unterschied ist, dass bei Let der Wert übergeben wird, der rechts vom '=' steht und bei einer Property-Set Funktion sozusagen der Ergebnis wert der Funktion an die Variable links vom '=' übrergeben wird. Beim ersten wird sozusagen einem Codeabschnitt ein Wert übergeben und beim 2. übergibt der Codeabschnitt den Wert. *gg*
Bye,
DarkTemplar
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.