PDA

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.

Shooter
25.09.2002, 16:23
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 :)

Shooter
26.09.2002, 19:45
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.

Shooter
27.09.2002, 14:48
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