[Gelöst] Elegantere Lösung?

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: Elegantere Lösung?

Beitrag von F3K Total »

Hallo,
habe mal unter http://api.openoffice.org/docs/common/r ... Flags.html nachgesehen:

Code: Alles auswählen

oQuelleRange1.clearContents(com.sun.star.sheet.CellFlags.VALUE+com.sun.star.sheet.CellFlags.STRING+com.sun.star.sheet.CellFlags.FORMULA)
kanst Du durch

Code: Alles auswählen

oQuelleRange1.clearContents(21)
etwas eleganter ersetzen. Einfach die gewünschten Konstanten addieren ...
Value=1
String=4
Formula=16
1+4+16=21 ... und einsetzen.

Gruß R
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Elegantere Lösung?

Beitrag von turtle47 »

Hallo Uwe,

ob das Folgende unbedingt viel kürzer ist?

Code: Alles auswählen

....
aQuelle = Array(40,41)
aZiel   = Array(15,17)
for i = 0 to uBound(aQuelle)
oQuelleRange1=oSheet.getCellRangeByPosition(aQuelle(i),0,aQuelle(i),letzte_Zeile)
aDat = oQuelleRange1.getDataArray()
oQuelleRange1.clearContents(com.sun.star.sheet.CellFlags.VALUE+com.sun.star.sheet.CellFlags.STRING+com.sun.star.sheet.CellFlags.FORMULA)
oQuelleRange2 = oSheet.getCellRangeByPosition(aZiel(i),0,aZiel(i),letzte_Zeile)
oQuelleRange2.setDataArray(aDat)
next i
....
Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: Elegantere Lösung?

Beitrag von F3K Total »

Na dann wird doch mit

Code: Alles auswählen

....
aQuelle = Array(40,41)
aZiel   = Array(15,17)
for i = 0 to uBound(aQuelle)
oQuelleRange1=oSheet.getCellRangeByPosition(aQuelle(i),0,aQuelle(i),letzte_Zeile)
aDat = oQuelleRange1.getDataArray()
oQuelleRange1.clearContents(21)
oQuelleRange2 = oSheet.getCellRangeByPosition(aZiel(i),0,aZiel(i),letzte_Zeile)
oQuelleRange2.setDataArray(aDat)
next i
....
ein Schuh draus :D

Gruß R
Antworten