Seite 1 von 1
Verbundene Zellen formatieren
Verfasst: So, 17.08.2008 20:31
von keksi1970
hi,
also, ich möchte gerne VerbundeneZellen formatieren. die "normalen" Formatierungen sind nicht das Problem, eher :
- Vertikale Ausrichtung
- Verdeckten Inhalt in die erste Zelle schieben
vor allem das mit dem Text muss möglich sein
gibts da irgendwas ?
LG Andreas
Re: Verbundene Zellen formatieren
Verfasst: So, 17.08.2008 21:59
von Karolus
Hallo Andreas
Geht alles zusammen per aufgezeichnetem Code:
Code: Alles auswählen
sub Zellen_zusammenfassen_und_drehen
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$B$23:$B$27"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
rem Inhalte in erste Zelle verschieben
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "MoveContents"
args2(0).Value = true
dispatcher.executeDispatch(document, ".uno:ToggleMergeCells", "", 0, args2())
rem Text drehen
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "AlignmentRotation"
args3(0).Value = 27000 '270° "von oben nach unten"
dispatcher.executeDispatch(document, ".uno:AlignmentRotation", "", 0, args3())
end sub
Gruß Karo
Re: Verbundene Zellen formatieren
Verfasst: Mo, 18.08.2008 09:54
von keksi1970
danke erstmal,
aber ich wollte eigentlich keinen dispatcher - code benutzen.
also mach ich das mal mit der Problemstellung
mein bisheriger Code sucht in der Spalte3 nach gleichen Ziffern, anschliessend fasst er den Bereich mit den gleichen Ziffern zusammen. nun fasst er aber den gleichen Bereich auch in benachbarten Spalten zusammen (so solls ja auch sein). leider steht nun nicht immer in der 1. Zeile des Bereiches etwas, so dass der Inhalt überschrieben wird.
mein bisheriger Code :
Code: Alles auswählen
durchlauf = 12
do while Auswertungssheet.getcellrangebyname("A" & durchlauf).string <> "" OR Auswertungssheet.getcellrangebyname("A" & _ durchlauf+2).string <> ""
tourfassenzaehler = 0
do while Auswertungssheet.getcellrangebyname("D" & durchlauf + tourfassenzaehler).value = _ Auswertungssheet.getcellrangebyname("D" & durchlauf).value
tourfassenzaehler = tourfassenzaehler +1
loop
for i = 0 to 11
If i = 4 then i = i + 1
oBereich = Auswertungssheet.getCellRangeByPosition( i, durchlauf-1, i, durchlauf + tourfassenzaehler-2 )
If oBereich.getIsMerged() then
oBereich.merge( false )
Else
oBereich.merge( true )
End If
oBereich.cellstyle="Zentriert1"
Next
durchlauf=durchlauf + 1
loop
das mit dem vertikal Zenztrieren hab ich über eine Zellvorlage gelöst, aber den Inhalt verschieben in die 1. sichbare Zelle ist mir leider nicht möglich. Irgendwelche anderen Vorschläge ?
LG Andreas
Re: Verbundene Zellen formatieren
Verfasst: Di, 19.08.2008 20:30
von keksi1970
so,, ein problem geloest, bleibt das Zweite :
mit
Code: Alles auswählen
with oBereich
.merge( true )
.VertJustify = 2 'vertikale Ausrichtung
.paraadjust = 3
end with
ändere ich zumindest das unwichtigere des Problems.
Bleibt die Frage nach dem "Zellinhalt!!!" in die erste Zelle verschieben.
Weiß jemand Rat ?
lg Andreas