markierte zellen kopieren..

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

Moderator: Moderatoren

arttur
*
Beiträge: 16
Registriert: Sa, 23.12.2006 01:01

markierte zellen kopieren..

Beitrag von arttur »

Hallo,
ich arbeite mit oo schon länger und bin bis jetzt ohne Makros gut zu recht gekommen.. jetzt aber komme ohne Makros nicht weiter…
ich brauche ein Makro der die Zelle (in Tabelle1) die gerade per Kursor aktiviert wurde in Tabelle2 kopiert ,also so was wie Markieren/Kopieren/Einfügen aber halt von Tabelle1 zu Tabelle 2 …ich würde dann dem Makro eine Taste zuordnen damit es noch einfacher geht.. kann mir jemand helfen…bin immer noch hier in Forum am suchen.. glaube aber nicht das ich alleine zu recht komme..
arttur
*
Beiträge: 16
Registriert: Sa, 23.12.2006 01:01

habe mir so was gebastelt

Beitrag von arttur »

Sub qq
dim a as object
dim d as variant
a = thiscomponent.CurrentController.ActiveSheet
d = a.getCellbyPosition(0,0).getString
a.getCellbyPosition(1,1).setString(d)
End Sub


der kod kopiert ein string von A1 zu B2...es ist schon mal was ..
wie

Wie soll ich es aber machen damit der Kod die von mir gewählte Zelle per Kursors kopiert.. und nicht die A1..??

werde weiter versuchen ...
arttur
*
Beiträge: 16
Registriert: Sa, 23.12.2006 01:01

bin etwas weiter gekommen...

Beitrag von arttur »

Sub copyTest1

REM copy a1:b3 from sheet #0 to sheet #1

Dim srcAddr as new com.sun.star.table.CellRangeAddress
Dim tgtAddr as new com.sun.star.table.CellAddress

srcAddr.EndColumn = 0
srcAddr.EndRow = 0
tgtAddr.Sheet = 1
oSh = thiscomponent.getSheets.getByIndex(2) 'any sheet will do
oSh.copyRange(tgtAddr,srcAddr)
REM it should be: thisComponent.copyRange(tgtAddr,srcAddr), since the sheet does not matter

End Sub

Sub copyData

aData=thisComponent.getSheets.getByIndex(0).getCellRangeByPosition(0,0,1,2).getDataArray()
thisComponent.getSheets.getByIndex(1).getCellRangeByPosition(0,0,1,2).setDataArray(aData())

End Sub


kopiert inhalt von A1 sheet1 nach A1 sheet2
Antworten