Hallo Regina,
ich fürchte ich weiß nicht mehr, als Du dazu. Hast Du als Reviewerin
der Online-Hilfe keinen direkten Draht zu einem Entwickler?
Regina Henschel schrieb:
In den
Formulierungen in der Online-Hilfe (bei isError und bei DefErr) taucht
der Begriff "error variable" auf. Gibt es so etwas in OOo-Basic
überhaupt, eine Variable, die als Inhalt einen Fehlerwert hat?
Mein gepostetes Beispiel zeigt, dass der Ausdruck a/b einen
Fehlerwert erzeugt, wenn b gleich 0 ist. Dieser Fehlerwert kann
mittels IsError(a/b) erkannt werden. Soweit so gut.
Richtig wäre es also, wenn in der Hilfe nicht von einer Variablen
die Rede wäre, die einen Fehlerwert enthält, sondern von einem
Ausdruck, der einen Fehlerwert ergibt. Die Online-Hilfe von Excel zu
IsError lautet übrigens genau so.
Bleibt Deine Frage, ob man einer Variablen einen Fehlerwert zuweisen
kann und ob man dann entsprechend des derzeitigen Hilfetexts diese
Variable darauf hin mit IsError untersuchen kann.
Folgendes Experiment deutet darauf hin, dass man einer Variablen
keinen Fehlerwert zuweisen kann:
---schnipp---
on error resume next
x=999
a=100
b=0
x=a/b
if isError(x) then
print "Fehler"
else
print x
end if
---schnipp---
In diesem Fall führt der unzulässige Ausdruck a/b (mit b=0) dazu,
dass die Zuweisung x=a/b überhaupt nicht ausgeführt wird. x behält
seinen ursprünglichen Wert 999. Auf diese Weise bekommt man in eine
Variable also keinen Fehlerwert hinein.
(Excel verhält sich genauso.)
Und langsam wirds bizarr: Die Excel-Online-Hilfe bringt mich auf
eine Funktion, die es offenbar auch in Calc gibt: CVErr()
Und mit dem folgenden Beispiel gelingt es tatsächlich der Variablen
einen Fehlerwert zuzuweisen, der mit IsError als solcher erkannt wird:
---schnipp---
x=CVErr(1)
if isError(x) then
print "Fehler"
else
print x
end if
---schnipp---
Somit ist die derzeitige Formulierung in der OOo Hilfe (bezieht sich
auf Variable mit Fehlerwert) zwar nicht falsch, aber es ist nur die
halbe Wahrheit (allgemeiner: Ausdruck ergibt Fehlerwert).
Unklar bleibt uns beiden wohl, wie man einen in einer Zelle
vorhandenen oder einen im Programmablauf auftretenden Fehler in
einer Variablen als Fehlerwert ablegen kann, die man dann wiederum
mit IsError darauf hin überprüfen könnte. Das wäre dann doch sinnvoll.
Meine WWW-weite Suche mit Google etc. bei Sun, bei OOo, bei
Starbasic etc. liefert zu diesem Themenkreis gar nichts hilfreiches,
als ob kein Mensch auf der Welt mit sowas zu tun hätte. :-/
Gruß
Stefan
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]