| Startseite | Inhalt
StarBasic / OpenOffice.org Basic FAQ
Fragen und Infos: starbasic@dannenhoefer.de

Zurück Vor |
| 7.5.7 Wie kann man Funktionen von Calc verwenden?
Man kann innerhalb von StarBasic-Makros auch interne Funktionen von Calc aufrufen. Dazu wird der Service com.sun.star.sheet.FunctionAccess verwendet. Er bietet Zugriff auf die internen Funktionen. Als Erstes muß man den Service starten. oFunctionAccess = createUnoService( "com.sun.star.sheet.FunctionAccess" ) Danach muß man sich ein Array mit der Anzahl der möglichen Parameter erzeugen. Dieses Array am Besten vom Typ Variant, da dieses Array unterschiedliche Typen beinhalten kann. Dim args( 0 ) As Variant args(0) = "test" Jetzt kann man auf die Funktion zugreifen (Hier auf die Text-Funktion Länge) result = oFunctionAccess.callFunction( "Len", args() ) Wenn mehr Parameter übergeben werden können oder müssen, passt man das Array entsprechend an. Hier als Beispiel die Funktion KGV: Dim args( 2 ) As Variant args(0) = 8 args(1) = 4 args(2) = 12 result = oFunctionAccess.callFunction( "LCM", args() ) Achtung: Wie man in den Beispielen sehen kann, muß man für die Funktion die englische Bezeichnung verwenden. Die deutsche Bezeichnung führt zu einem Fehler. Leider kann man nicht sofort auf die englische Bezeichnung schließen. Hier gibt es eine Liste mit den deutschen und englischen Bezeichnungen: Als calc-dokument oder als pdf-Datei. Oder hier in der FAQ unter: Wie kann man Funktionen von Calc verwenden? |
Seitenanfang |

2003 - 2009 von Michael Dannenhöfer |
Letzte Aktualisierung: 06.04.2009