openoffice-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Schmidt <joe...@j-m-schmidt.de>
Subject RE: [Basic] Laufzeitfehler "Objektvariable nicht belegt"
Date Mon, 29 Jun 2020 07:54:35 GMT
Hallo, 

> -----Original Message-----
> From: Wolfgang Jäth [mailto:jawo.ml.hamster@arcor.de] 
> Sent: Monday, June 29, 2020 8:34 AM
> To: users-de@openoffice.apache.org
> Subject: [Basic] Laufzeitfehler "Objektvariable nicht belegt"
> 
> Hi, 
> 
> ich hab da gerade ein kleines Verständnisproblem. Eigentlich möchte
> ich (in einer Schleife) die Anweisung
> 
> | aOutput(currRow)(currCol) = Options2String (aMatrix 
> (currRow, currCol, 
> SDNumbers))
> 
> ausführen. Die einzelnen Variablen sind folgendermaßen definiert 
> (und nachweislich auch sinnvoll belegt):
> 
> | Dim aMatrix (0 To 9, 0 To 9, 0 To 5) As Integer
> | Dim currRow, currCol As Integer
> | Dim aOutput As Variant
> | Dim oSheet, oOutput As Object
> | oSheet = thisComponent.getCurrentController.getActiveSheet
> | oOutput = oSheet.getCellRangeByName (WMOutput)
> | aOutput = oOutput.getDataArray()
> 
> Das Beobachterfenster zeigt mir aMatrix als 'Integer(0 To 9, 
> 0 To 9, 0 To 5)',
> wie es sein soll, und aOutput als 'Object(0 To 9)'; etwas merkwürdig,
> weil eigentlich definiert als Variant, aber ist auch an 
> anderen Stellen so
> (und fonktioniert dort auch).

Variant gilt als Dateityp der alle anderen Typen enthält[1]. Eine als Variant deklarierte
Variable wird den Typ annehmen der dem Inhalt entspricht der ihr zugewiesen wird, z.B.:

Dim x As Variant
x = "abc"
MsgBox TypeName(x) 'String
x = 1.23
MsgBox TypeName(x) 'Double

[1]
das ist eine Besonderheit und nicht selbstredend so, denn obwohl z.B. eine Long-Variable als
erweiterte Integer-Variable verstanden werden könnte, "enthält" eine Long-Variable nicht
_den Typ_ Integer, Schaue Dir das untereschiedliche Verhalten an:

Dim x As Variant
x = 123
MsgBox TypeName(x) 'Integer

Dim y As Long
y = 123
MsgBox TypeName(y) 'Long!



> Bereits beim ersten Durchgang liefert mir die obige Zeile [...]

bitte gib den vollständigen Code an, denn zumindest ich blicke nicht durch



Gruß
Jörg



---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@openoffice.apache.org
For additional commands, e-mail: users-de-help@openoffice.apache.org


Mime
View raw message