Format komórek i zakresów (było: adres arkusza)
Format komórek i zakresów (było: adres arkusza)
(ciąg dalszy wątku http://user.services.openoffice.org/pl/ ... ?f=9&t=255)
a czy w tym makro można jeszcze zrobić tak, żeby nadawało odpowiedni format tym komórkom?
tzn. czy jest coś takiego np.:
"ark.getCellByPosition(0,i).Format = " i tu bym wpisywał, że np. komórka ma mieć format liczbowy, z dwoma miejscami po przecinku, albo że komórka ma mieć górną krawędź? itp...
zmodyfikowałem sobie na moje potrzeby to makro, ale po każdym jego użyciu, arkusz "podsumowanie" muszę ręcznie formatować żeby było ładne na wydruku a tak, miałbym już gotowy raporcik...
a czy w tym makro można jeszcze zrobić tak, żeby nadawało odpowiedni format tym komórkom?
tzn. czy jest coś takiego np.:
"ark.getCellByPosition(0,i).Format = " i tu bym wpisywał, że np. komórka ma mieć format liczbowy, z dwoma miejscami po przecinku, albo że komórka ma mieć górną krawędź? itp...
zmodyfikowałem sobie na moje potrzeby to makro, ale po każdym jego użyciu, arkusz "podsumowanie" muszę ręcznie formatować żeby było ładne na wydruku a tak, miałbym już gotowy raporcik...
Ostatnio zmieniony czw mar 25, 2010 6:34 pm przez Jan_J, łącznie zmieniany 2 razy.
Powód: rozszczepienie wątku
Powód: rozszczepienie wątku
OOo 3.1.1, Kubuntu
Re: adres arkusza
Co do formatu danych: http://api.openoffice.org/docs/common/r ... ormat.html
Jeżeli chodzi o format prezentacyjny, to albo używasz gotowych nazwanych stylów: właściwość CellStyle przypisana do komórki lub zakresu -- tak jest najłatwiej w obrębie jednego dokumentu;
albo dłubiesz w wartościach każdej cechy osobno -- popatrz spis właściwości obiektów klasy Cell lub CellRange: http://api.openoffice.org/docs/common/r ... rties.html (z jakiegoś powodu lista nie jest kompletna, brakuje w niej np. CharHeight).
Jeżeli chodzi o format prezentacyjny, to albo używasz gotowych nazwanych stylów: właściwość CellStyle przypisana do komórki lub zakresu -- tak jest najłatwiej w obrębie jednego dokumentu;
albo dłubiesz w wartościach każdej cechy osobno -- popatrz spis właściwości obiektów klasy Cell lub CellRange: http://api.openoffice.org/docs/common/r ... rties.html (z jakiegoś powodu lista nie jest kompletna, brakuje w niej np. CharHeight).
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: adres arkusza
sorry, że tak chcę łopatologicznie, ale ja dopiero raczkuję w tych sprawach...Jan_J pisze:Co do formatu danych: http://api.openoffice.org/docs/common/r ... ormat.html
Jeżeli chodzi o format prezentacyjny, to albo używasz gotowych nazwanych stylów: właściwość CellStyle przypisana do komórki lub zakresu -- tak jest najłatwiej w obrębie jednego dokumentu;
albo dłubiesz w wartościach każdej cechy osobno -- popatrz spis właściwości obiektów klasy Cell lub CellRange: http://api.openoffice.org/docs/common/r ... rties.html (z jakiegoś powodu lista nie jest kompletna, brakuje w niej np. CharHeight).
czyli żeby nadać odpowiedni format danych (no np. walutowy) jakiej formuły trzeba użyć?
Kod: Zaznacz cały
ark.getCellByPosition(1,i).?????????? = CURRENCY
Co do używania gotowych stylów, robię coś takiego:
Kod: Zaznacz cały
ark.getCellByPosition(1,i).CellStyle = "Wynik"
a jak używać właściwości obiektu Cell? jaka powinna być składnia?
kombinowałem na kilka sposobów np.:
Kod: Zaznacz cały
ark.getCellByPosition(2,i).TopBorder
OOo 3.1.1, Kubuntu
Re: adres arkusza
Prawie tak. Sens w tym, że domyślne ramki Cell i Range są niemodyfikowalne. Trzeba se ramkę zrobić, i podpiąć do obiektu. Załączam banalne działające przykłady:Powodzenia
Kod: Zaznacz cały
Sub takieSobieZabawy()
rem struktura ramki + jej właściwości
Set b = createUNOStruct("com.sun.star.table.BorderLine")
b.InnerLineWidth = 50
b.OuterLineWidth = 50
b.Color = rgb(0,0,128)
s = thisComponent.CurrentController.ActiveSheet
rem stosuj do wybranej komórki
c = s.getCellByPosition(10,10)
c.TopBorder = b
c.BottomBorder = b
c.LeftBorder = b
c.RightBorder = b
c.CharHeight = 24
rem stosuj do wybranego zakresu
c = s.getCellRangeByPosition(0,0,2,2)
c.TopBorder = b
c.BottomBorder = b
c.LeftBorder = b
c.RightBorder = b
c.CharHeight = 24
End Sub
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: adres arkusza
super dzięki za przykład, już wiem "o co kaman" , ale to faktycznie trochę jest zabawy z bezpośrednim nadawaniem komórkom formatowania
szybciej, jak dla mnie, będzie zdefiniować sobie style i na nich operować
jeszcze jakbyś mi podpowiedział jaka składnia musi być, żeby nadawać odpowiedni format danych
jak używać tego co mi dałeś w tym linku:
http://api.openoffice.org/docs/common/r ... ormat.html
będę bardzo zobowiązany
szybciej, jak dla mnie, będzie zdefiniować sobie style i na nich operować
jeszcze jakbyś mi podpowiedział jaka składnia musi być, żeby nadawać odpowiedni format danych
jak używać tego co mi dałeś w tym linku:
http://api.openoffice.org/docs/common/r ... ormat.html
będę bardzo zobowiązany
OOo 3.1.1, Kubuntu
Re: format komórek i zakresów
Na NumberFormat się nie znam, zdarzało mi się go tylko czytać. Ale popatrz tu: http://codesnippets.services.openoffice ... rmats.snip i tu: http://www.oooforum.org/forum/viewtopic.phtml?t=86411
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Re: Format komórek i zakresów (było: adres arkusza)
Utwórz nowy styl komórki z odpowiednim formatowaniem
"Format" -> "Style i formatowanie"
Jeżeli chcesz się bawić makrem to tu jest prosty przykład użycia NumberFormat
http://wiki.services.openoffice.org/wik ... _Documents
"Format" -> "Style i formatowanie"
Jeżeli chcesz się bawić makrem to tu jest prosty przykład użycia NumberFormat
http://wiki.services.openoffice.org/wik ... _Documents
OOo3.1.1 na Ubuntu 9.04
-
- Posty: 12
- Rejestracja: wt lip 02, 2013 2:20 pm
Re: Format komórek i zakresów (było: adres arkusza)
A co jeśli chodzi o stworzenie jednego, pełnego dokumentu jako wzoru dla innych. Czy jest możliwość zdefiniowania jednego style dla wyglądu całego dokumentu?
Spójrz prawdzie w oczy i powiedz, że to kłamstwo...