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]

Antwort per Email an