Datentypen zur Laufzeit nicht immer und überall gleichbleibend?
Verfasst: Fr 9. Aug 2019, 15:00
Hallo zusammen,
leider fehlen mir die tieferen Kenntnisse über das Starbasic Innenleben (noch). Aber ich habe folgende Situation in Calc:
Eine als String deklarierte Variable bekommt zur Laufzeit den Wert einer Zelle mit getString() zugewiesen. Wenn ich nun versuche, diese Variable in einen Aufruf einer Sub-Routine zu stecken, die als Parameter einen String erwartet bekomme ich den Fehler: IllegalArgumentException.
Wenn ich aber ""+Variable in den Aufruf stecke funktioniert es.
Also:
Wo liegt denn da das Problem? Vom Typ her müsste doch die Variable passen und auch ihr Inhalt ist ja bereits ein String?
Danke schon mal für eine Erklärung!
VG
leider fehlen mir die tieferen Kenntnisse über das Starbasic Innenleben (noch). Aber ich habe folgende Situation in Calc:
Eine als String deklarierte Variable bekommt zur Laufzeit den Wert einer Zelle mit getString() zugewiesen. Wenn ich nun versuche, diese Variable in einen Aufruf einer Sub-Routine zu stecken, die als Parameter einen String erwartet bekomme ich den Fehler: IllegalArgumentException.
Wenn ich aber ""+Variable in den Aufruf stecke funktioniert es.
Also:
Code: Alles auswählen
Sub TuWas(tuString as String)
...
End Sub
Sub NochNeSub
Dim stringVar as String
...
stringVar = cell.getString()
tuWas(stringVar) <= IllegalArgumentException
tuWas(""+stringVar) <= Alles OK
...
Danke schon mal für eine Erklärung!
VG