Hallo,
ich bin in einem Artikel auf folgende Zeilen gestoßen. Aus einem Bereich wird mit der OO-Calc Funktion MIN() der kleinste Wert ermittelt.
svc = createUnoService( "com.sun.star.sheet.FunctionAccess" )
oSheet = ThisComponent.Sheets(0) ' Get leftmost sheet
REM CellRange mit Zahlen
oCellRange = oSheet.getCellRangeByPosition( 0, 0, 0, 9 )
arg = array( oCellRange )
print svc.callFunction( "MIN", arg )
Nun möchte ich andere OO-Calc Funktionen wie TRIM(), LEN() und REPLACE() auf der gleichen Art nutzen, bekomme aber nur einen Fehler.
svc = createUnoService( "com.sun.star.sheet.FunctionAccess" )
oSheet = ThisComponent.Sheets(0) ' Get leftmost sheet
REM CellRange mit Texte
oCellRange = oSheet.getCellRangeByPosition( 0, 0, 0, 9 )
arg = array( oCellRange )
svc.callFunction( "TRIM", arg )
Welche Parameter muss ich wo setzen damit ich diese Funktionen richtig aufrufen kann oder wo liegt Fehler?
MfG
SUGON
TRIM(), LEN() und REPLACE() mit FunctionAccess
Moderator: Moderatoren
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Der zweite Parameter muss dem Wert entsprechen, der von der Funktion bearbeitet werden kann:
bei TRIM, LEN also eine Zeichenkette, nicht einen Bereich von Zellen.
This WFM:
Bei REPLACE entsprechend mehr Parameter mitgeben:
Hilft Dir das weiter?
bei TRIM, LEN also eine Zeichenkette, nicht einen Bereich von Zellen.
This WFM:
Code: Alles auswählen
Function calc_Func_LEN
FuncAcc = createunoservice("com.sun.star.sheet.FunctionAccess")
oSheet = ThisComponent.Sheets(0) ' Get leftmost sheet
oCell = oSheet.getCellByPosition( 5, 1 ) 'Zelle F2
aResult=FuncAcc.callFunction("LEN", array( oCell.String ))
calc_Func_LEN = aResult
End Function
Code: Alles auswählen
aResult=FuncAcc.callFunction("REPLACE", array( oCell.String , 1,3,"ZZZ" ))
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
TRIM(), LEN() und REPLACE() mit FunctionAccess
Hallo Winfried,
vielen dank für deine Beispiele. Habs verstanden und es Hilft mir sehr weiter!
MfG
SUGON
vielen dank für deine Beispiele. Habs verstanden und es Hilft mir sehr weiter!
MfG
SUGON