wstawianie makra

Dyskusje dotyczące tworzenia makropoleceń, pisania skryptów oraz programowania przy użyciu UNO
tatadek
Posty: 1
Rejestracja: pn mar 06, 2017 9:55 pm

wstawianie makra

Post autor: tatadek »

Witajcie!
Interesuje mnie czy jest możliwe wstawienie makra do makra - tzn. utworzyłem makro do obliczeń, których muszę wykonywać dziesiątki i chciałbym to zautymatyzować poprzez kolejne makro. Czy tak się da?
OpenOffice 4.1.3 na Windows 8
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: wstawianie makra

Post autor: Jan_J »

Nazwa "makropolecenie" formalnie oznacza tekst kodu wysokiego poziomu, którego użycie przed rozpoczęciem przetwarzania jest fizycznie zastępowane jego treścią.
Są całe języki albo ich podstystemy, które tak funkcjonują. Na przykład preprocesor języka C. W pakietach użytkowych bywało, i nadal bywa, że makropolecenie zawiera sekwencję czynności użytkownika (Plik/Nowy/Wpisz imie=<parametr><Enter>nawisko=<parametr><Enter>/Plik/Zapisz/Plik/Drukuj).
W programowaniu Calca, Excela zresztą również, nazwa "makro" jest już tylko tradycją. Procedury i funkcje pisze się w regularnych językach, i wywołuje się je, najczęściej w trybie interpretacji, w ramach sesji aplikacji. Oczywiście te podprogramy mogą odwoływać się do innych podprogramów, byle by były wzajemnie widoczne.

Prosty przykład w Basicu

Kod: Zaznacz cały

sub takie_tam()
komorka = thisComponent.currentController.getActiveSheet().getCellByPosition(0,0)
wstaw(komorka, 1.0)
dodaj(komorka, 2.34)
end sub

sub wstaw(cell, value)
  cell.setValue(value)
end sub

sub dodaj(cell, value)
  cell.setValue(cell.getValue() + value)
end sub
W innych językach wyposażonych w obsługę Calca (np. Python, JavaScript) jest podobnie.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ODPOWIEDZ