[Gelöst] Elegantere Lösung?

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: [Gelöst] Elegantere Lösung?

Re: Elegantere Lösung?

von F3K Total » Di, 19.04.2011 20:55

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

Re: Elegantere Lösung?

von turtle47 » Di, 19.04.2011 20:49

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

Re: Elegantere Lösung?

von F3K Total » Di, 19.04.2011 20:49

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

Nach oben