Hallo Mathias,
der Errorcode besagt laut OO-Doku:
Die Formel liefert einen Wert, der nicht mit der Definiti
on korrespondiert, oder eine Formel verweist auf eine
Zelle, die Text anstelle einer Zahl enthält.
Eine andere mögliche Ursache ist, dass Deine Variable "oCell" sich nicht auf das
zu aktuelle Dokument bezieht.
Installiere mal die Extension MRI:
http://extensions.services.openoffice.o ... ction-tool
Damit kannst Du die Eigenschaften und Methoden Deines Code untersuchen.
Bitte beachte die Dokumentation dazu.
Hiermal ein kleiner Beipsielcode, mit dem Du die erste Untersuchung in einem neuen Dokument vornehmen kannst:
Code: Alles auswählen
REM ***** BASIC *****
Sub Main
Dim oDoc as Object
Dim oSel as Object
' MRI laden
Globalscope.BasicLibraries.LoadLibrary ( "MRILib")
' Referenz: aktuelles Dokument
oDoc = ThisComponent
' aktuelle Zell-Selektion ermitteln
oSel = oDoc.getCurrentSelection()
' Selektion untersuchen
' Unter Properties: Value wird eindeutig der
' errechnete Wert angezeigt
mri oSel
End Sub
Schreibe hierfür in Zelle A1 und B1 einen Wert.
Schreibe diese Formel (=A1+B1) in eine beliebige Zelle und lasse den Cursor in dieser Zelle stehen, dann führe den Code aus.
Es öffnet sich zur Laufzeit des Code das MRI Fenster, da ich hier "MRI oSel" im Code angegeben habe, werden die
Eigenschaften und Methoden der aktuell ausgewählten Zelle angezeigt.
Klicke auf den Reiter Properties (Eigenschaften), hier wird Dir unter VALUE das Ergebnis der Formelberechnung angezeigt.
Unter FORMULA siehst Du die Formel.
Wenn alles korrekt verlaufen ist, kannst Du MRI mal auf Deinen Code anwenden.
Sinnvoll ist es auch Dein "oCell" zu untersuchen, z.B. auf welches Dokument wird "oCell" im Code angewendet!
Untersuche auch die Properties:
Formula
String
Value
Solltest Du nicht weiterkommen, brauche ich allerdings mehr Informationen, alles andere wäre blinde Raterei.
Gruß
Craig