Korištenje makronaredbi u LibreOfficeu. Kako omogućiti makronaredbe u LibreOffice Calc Makronaredbe u libreofficeu

Poziv je primljen. :)

Pozdrav, hakeri!
Danas vam želim reći o korištenju makronaredbi u LibreOffice.

Predgovor
Svaki dan kod kuće i na poslu koristimo se uredskim aplikacijama za obavljanje nekih zadataka. Često se događa da ste specijalizirani za jedan posao i na kraju obavljate iste zadatke: lijepite isti tekst, formatirate ga, koristite veliki broj prečaca. U svim tim slučajevima možete uštedjeti svoje dragocjeno radno vrijeme automatiziranjem dijela svog rada.
Kasnije u članku reći ću vam o korištenju makronaredbi u LibreOffice.

Što su makronaredbe i zašto jesu?

Makro- ovo je niz određenih radnji koje se mogu snimiti pomoću uobičajenog izbornika. Kada odaberete snimanje makronaredbe, radnje koje izvodite automatski se spremaju kao kod skripte. A u vašem će se budućem radu izvoditi samostalno, točno ponavljajući vaše radnje u programu. Makro može biti jednostavan ili vrlo složen - sve ovisi o rezultatu koji želite postići. Glavni kriterij za makronaredbe je da budu moćni i istovremeno jednostavni za korištenje. LibreOffice makronaredbe ispunjavaju upravo ove zahtjeve. Probajmo ovo u praksi.

Za korištenje paketa LibreOffice Morate imati predinstaliran operativni sustav Linux, Windows ili MacOS, kao i instaliran paket LibreOffice (možete ga instalirati npr. iz ppa repozitorija, kao što je opisano u ovoj temi)

Makro upravljanje

Prije nego počnemo stvarati naš makro, moramo se upoznati s alatom za upravljanje makroima. Krenimo stazom Alati - Makronaredbe - Organizirajte makronaredbe - LibreOffice Basic Makronaredbe(Alati - Makronaredbe - Upravljanje makronaredbama - LibreOffice Basic Makronaredbe):

U lijevom stupcu prozora možemo vidjeti popis instaliranih makronaredbi prema zadanim postavkama. Klikom na bilo koji od njih možete ga urediti ili izbrisati.
Glavna zadaća prozora- odaberite makro koji vam je potreban, dodijelite mu gumb na alatnoj traci ili ga povežite s događajem. Dodjeljivanje gumba makronaredbi omogućuje brzo izvršavanje onih koje se najčešće koriste.

Želio bih napomenuti da stvaranje makronaredbe u automatskom načinu rada (snimanje) zahtijeva barem malo znanja o jeziku za pisanje makronaredbi, jer ćemo ga ponekad morati urediti. Kako bismo vidjeli kako makro izgleda, odaberite makro koji nam je potreban i kliknite Uredi(Uredi). Ispod je primjer kako makronaredba izgleda u izvornom kodu:

Uzmimo jednostavan primjer. Neki tekst već imamo umetnut u dokument i trebamo mu napraviti naslov jer će se naš tekst koristiti u poslovnoj korespondenciji.
Naš budući makro će morati moći:
- postavite tekst u gornjem središnjem dijelu stranice;
- unesite tekst koji će se koristiti kao naslov.
Nakon što izradimo makro, dodijelit ćemo mu gumb na alatnoj traci. Nakon toga, jedan klik će biti dovoljan za umetanje naslova u dokument.
Slijedimo redoslijed koraka.

Korak 1.
Otvorite tekstualni dokument. Idemo dalje Alati - Makronaredbe - Snimi makronaredbu. Pojavit će se mali prozor "Snimi makronaredbu" s jednim gumbom "Završi makronaredbu" ( Zaustavi snimanje):

Korak 2.
Napravimo naslov teksta. Kliknite na gumb "centralno poravnanje"(“Centar”), tako da naš budući tekst bude točno u središtu dokumenta. Sada pišemo sam tekst naslova. Ne biste trebali postavljati različite formate za njega (font ili podebljano/kurziv/podcrtano), jer makronaredba ne pamti takve radnje.

3. korak
Nakon što je naslov dovršen, kliknite gumb End Macro u prozoru Record Macro. Prozor Macro Organizer će se odmah pojaviti. Dodijelite naziv novoj makronaredbi (na primjer, PostHead). Sada ga možete spremiti na mjesto gdje želite (na primjer, mapa " Moj makro").

Korak 4.
Sada samo trebamo dodati gumb na alatnoj traci za makro PostHead. Ovaj proces nije tako jednostavan kao što se na prvi pogled čini.
Otvor Osnovne makronaredbe LibreOffice, pritisni gumb " Dodijeliti" ("Dodijeli") Pojavljuje se sljedeći prozor Prilagodite, u kojem bismo trebali otići na tab Alatne trake i provjerite je li polje "Alatna traka" postavljeno na "Standardno" ( Standard) .

Kliknite gumb "Dodaj" u ovom prozoru ( Dodati). Pojavit će se još jedan prozor - "Dodavanje naredbi" ( Dodajte naredbe).
Na popisu lijevog prozora “Kategorije” ( Kategorija) pronaći " LibreOffice makronaredbe" (na samom dnu popisa). Otvorite ga i dođite do naše makronaredbe. Nakon što je nađete, sve što preostaje je dovršiti zadnji i najjednostavniji korak. Povucite makronaredbu Letterhead mišem na mjesto na alatnoj traci gdje bismo volio to vidjeti.
To je to, zadatak smo izvršili.
Sada sve što trebamo učiniti je upotrijebiti gumb PostHead, koje smo dodali na panel. Na primjer, otvorite novi dokument i kliknite gumb PostHead. Naš makro će stvoriti naslov s točno onim tekstom koji smo mu “dodijelili” i smjestiti ga na vrh dokumenta točno u središte.
Je li stvarno prikladno?

Poanta
Naravno, u mom primjeru stvorili smo vrlo jednostavan makro. Ali uz pomoć gore opisanih alata možete stvoriti vrlo složene makronaredbe. I ne samo u Pisac, ali i u svim ostalim aplikacijama paketa LibreOffice(Proračunska tablica, prezentacije itd.). Sada kada znate kako izraditi makronaredbe, lako možete izraditi vlastite kako biste si olakšali rad.
Svrha ovog članka je naučiti osnove korištenja alata za snimanje makronaredbi.

Od sada je u LibreOfficeu upravljanje makroima implementirano u sučelje na jednom mjestu.

Problemi kako ih ja vidim su:

Iz izbornika Tools->Macros->Manage Macros dostupna su ČETIRI različita dijaloga za upravljanje makronaredbama, za svaki dostupni jezik posebno. Basic, JavaScript, BeanShell i Python. I svi su različiti.

Štoviše, dijaloški okvir za Basic ne dopušta vam upravljanje makronaredbama. Da biste zapravo upravljali osnovnim makronaredbama, trebate otvoriti zasebni dodatni dijaloški okvir.

Gumb Uredi u svim dijalozima omogućuje vam uređivanje same makronaredbe, a ne naziva/lokacije biblioteke/modula/dijaloškog okvira.

Predlažem ukinuti svu ovu sramotu i napraviti JEDAN dijalog za upravljanje makronaredbama i pokretanje makronaredbi.

Nešto poput ovoga (napravio sam to na engleskom, jer će u bugzilli ovako SVI razumjeti o čemu pričamo i zašto):

Na lijevoj strani dijaloškog okvira upravljamo bibliotekama/modulima/dijalozima, a također znamo kako uvoziti/izvoziti. A s desne strane radimo izravno s makronaredbama: pokrećemo ih, dodjeljujemo makronaredbe događajima i uređujemo ih, ako je potrebno.

Nije potrebno odvajanje po programskom jeziku, zbog činjenice da sam LibreOffice razlikuje u kojem su programskom jeziku napisane makronaredbe u bibliotekama i, koliko sam shvatio, neće dopustiti da se Python modul pokrene iz osnovne biblioteke. To znači da u mojoj verziji dijaloga moram natjerati LibreOffice da istakne biblioteke/module na različitim jezicima ikonama i svi će jednostavno biti hijerarhijski u jednom stablu.

Postoji još jedna točka: u trenutnoj verziji LibreOfficea, za rad s makronaredbama u Pythonu potrebno vam je vanjsko proširenje APSO. Bez njega nećete moći ni stvoriti odgovarajuću biblioteku. Ne razumijem zašto je to učinjeno, niti zašto ovo proširenje nije uključeno u osnovni LibreOffice paket, jer osnovna funkcionalnost jednostavno ne radi.

Dakle, kada se prerađuje dijalog za upravljanje makroima, treba uzeti u obzir i ovu čudnu činjenicu.

Poziv je primljen. :)

Pozdrav, hakeri!
Danas vam želim reći o korištenju makronaredbi u LibreOffice.

Predgovor
Svaki dan kod kuće i na poslu koristimo se uredskim aplikacijama za obavljanje nekih zadataka. Često se događa da ste specijalizirani za jedan posao i na kraju obavljate iste zadatke: lijepite isti tekst, formatirate ga, koristite veliki broj prečaca. U svim tim slučajevima možete uštedjeti svoje dragocjeno radno vrijeme automatiziranjem dijela svog rada.
Kasnije u članku reći ću vam o korištenju makronaredbi u LibreOffice.

Što su makronaredbe i zašto jesu?

Makro- ovo je niz određenih radnji koje se mogu snimiti pomoću uobičajenog izbornika. Kada odaberete snimanje makronaredbe, radnje koje izvodite automatski se spremaju kao kod skripte. A u vašem će se budućem radu izvoditi samostalno, točno ponavljajući vaše radnje u programu. Makro može biti jednostavan ili vrlo složen - sve ovisi o rezultatu koji želite postići. Glavni kriterij za makronaredbe je da budu moćni i istovremeno jednostavni za korištenje. LibreOffice makronaredbe ispunjavaju upravo ove zahtjeve. Probajmo ovo u praksi.

Za korištenje paketa LibreOffice Morate imati predinstaliran operativni sustav Linux, Windows ili MacOS, kao i instaliran paket LibreOffice (možete ga instalirati npr. iz ppa repozitorija, kao što je opisano u temi)

Makro upravljanje

Prije nego počnemo stvarati naš makro, moramo se upoznati s alatom za upravljanje makroima. Krenimo stazom Alati - Makronaredbe - Organizirajte makronaredbe - LibreOffice Basic Makronaredbe(Alati - Makronaredbe - Upravljanje makronaredbama - LibreOffice Basic Makronaredbe):

U lijevom stupcu prozora možemo vidjeti popis instaliranih makronaredbi prema zadanim postavkama. Klikom na bilo koji od njih možete ga urediti ili izbrisati.
Glavna zadaća prozora- odaberite makro koji vam je potreban, dodijelite mu gumb na alatnoj traci ili ga povežite s događajem. Dodjeljivanje gumba makronaredbi omogućuje brzo izvršavanje onih koje se najčešće koriste.

Želio bih napomenuti da stvaranje makronaredbe u automatskom načinu rada (snimanje) zahtijeva barem malo znanja o jeziku za pisanje makronaredbi, jer ćemo ga ponekad morati urediti. Kako bismo vidjeli kako makro izgleda, odaberite makro koji nam je potreban i kliknite Uredi(Uredi). Ispod je primjer kako makronaredba izgleda u izvornom kodu:

Uzmimo jednostavan primjer. Neki tekst već imamo umetnut u dokument i trebamo mu napraviti naslov jer će se naš tekst koristiti u poslovnoj korespondenciji.
Naš budući makro će morati moći:
- postavite tekst u gornjem središnjem dijelu stranice;
- unesite tekst koji će se koristiti kao naslov.
Nakon što izradimo makro, dodijelit ćemo mu gumb na alatnoj traci. Nakon toga, jedan klik će biti dovoljan za umetanje naslova u dokument.
Slijedimo redoslijed koraka.

Korak 1.
Otvorite tekstualni dokument. Idemo dalje Alati - Makronaredbe - Snimi makronaredbu. Pojavit će se mali prozor "Snimi makronaredbu" s jednim gumbom "Završi makronaredbu" ( Zaustavi snimanje):

Korak 2.
Napravimo naslov teksta. Kliknite na gumb "centralno poravnanje"(“Centar”), tako da naš budući tekst bude točno u središtu dokumenta. Sada pišemo sam tekst naslova. Ne biste trebali postavljati različite formate za njega (font ili podebljano/kurziv/podcrtano), jer makronaredba ne pamti takve radnje.

3. korak
Nakon što je naslov dovršen, kliknite gumb End Macro u prozoru Record Macro. Prozor Macro Organizer će se odmah pojaviti. Dodijelite naziv novoj makronaredbi (na primjer, PostHead). Sada ga možete spremiti na mjesto gdje želite (na primjer, mapa " Moj makro").

Korak 4.
Sada samo trebamo dodati gumb na alatnoj traci za makro PostHead. Ovaj proces nije tako jednostavan kao što se na prvi pogled čini.
Otvor Osnovne makronaredbe LibreOffice, pritisni gumb " Dodijeliti" ("Dodijeli") Pojavljuje se sljedeći prozor Prilagodite, u kojem bismo trebali otići na tab Alatne trake i provjerite je li polje "Alatna traka" postavljeno na "Standardno" ( Standard) .

Kliknite gumb "Dodaj" u ovom prozoru ( Dodati). Pojavit će se još jedan prozor - "Dodavanje naredbi" ( Dodajte naredbe).
Na popisu lijevog prozora “Kategorije” ( Kategorija) pronaći " LibreOffice makronaredbe" (na samom dnu popisa). Otvorite ga i dođite do naše makronaredbe. Nakon što je nađete, sve što preostaje je dovršiti zadnji i najjednostavniji korak. Povucite makronaredbu Letterhead mišem na mjesto na alatnoj traci gdje bismo volio to vidjeti.
To je to, zadatak smo izvršili.
Sada sve što trebamo učiniti je upotrijebiti gumb PostHead, koje smo dodali na panel. Na primjer, otvorite novi dokument i kliknite gumb PostHead. Naš makro će stvoriti naslov s točno onim tekstom koji smo mu “dodijelili” i smjestiti ga na vrh dokumenta točno u središte.
Je li stvarno prikladno?

Poanta
Naravno, u mom primjeru stvorili smo vrlo jednostavan makro. Ali uz pomoć gore opisanih alata možete stvoriti vrlo složene makronaredbe. I ne samo u Pisac, ali i u svim ostalim aplikacijama paketa LibreOffice(Proračunska tablica, prezentacije itd.). Sada kada znate kako izraditi makronaredbe, lako možete izraditi vlastite kako biste si olakšali rad.
Svrha ovog članka je naučiti osnove korištenja alata za snimanje makronaredbi.

Sve materijale objavljujem u dva formata - odt I pdf. Potonji je prikladan za distribuciju. Izvezi u pdf provodi se pomoću standardnih alata LibreOffice kroz dijaloški okvir " Datoteka → Izvezi u PDF" U procesu lekture priručnika i ispravljanja grešaka u njemu često morate ponovno spremati dokument. A kako ne bih ručno izvozio dokument svaki put, mislio sam da bi bilo lijepo da se to događa automatski prilikom spremanja odf datoteka. A poznavanje LibreOffice makro jezika u ovom slučaju apsolutno nije potrebno.

Problem je riješen pomoću funkcije snimanja makronaredbi. Prema zadanim postavkama nije dostupno. Da biste to omogućili idite na " Alati → Opcije"U poglavlju" LibreOffice» odaberite stavku « Proširene mogućnosti" i potvrdite okvir pored " Omogući makro snimanje».

Nakon ponovnog pokretanja LibreOfficea, u " Alati → Makronaredbe" artikl " Snimi makro».

Nakon pritiska na " Alati → Makronaredbe → Snimi makronaredbu"Na ekranu će se pojaviti prozor s gumbom. Završi snimanje».

Poanta je jednostavna:

  1. Omogući makro snimanje
  2. Izvršite potrebnu radnju dok je snimanje u tijeku. U mom slučaju jednostavno sam izvezao u PDF putem " Datoteka → Izvezi u PDF»
  3. Pritisnite gumb Završi snimanje»
To je to, makro za izvoz PDF-a je snimljen, preostaje ga samo spremiti.

Radi praktičnosti stvorio sam modul " Izvezi_u_PDF"u knjižnici" Standard" i spremio moju makronaredbu u ovaj modul.

Sada sve što preostaje je dodijeliti makronaredbu za okidanje na određeni događaj. U našem slučaju, za spremanje dokumenta. Idemo " Usluga → Postavke"na karticu" Događaji».


Sučelje

ali se bitno razlikuje od Microsoft Office Excela 2010.

MS Excel 2010 sadrži takozvanu “menu ribbon” - revolucionarno Microsoftovo rješenje uvedeno u MS Office 2007, koje se mnogima nije svidjelo, a razvijeni su čak i posebni uslužni programi koji vraćaju izgled MS Office 2010 na MS Office 2003.

Pogledajmo pobliže najvažnije elemente izbornika gore navedenih uređivača proračunskih tablica.

U uređivačima proračunskih tablica (MS Excel, OOo Calc, LiO Calc, IBM Lotus Symphony Spreadsheets, itd.), najvažniji element je "ćelija" i sve operacije koje se izvode u uređivačima proračunskih tablica primjenjuju se posebno na ćelije ili njihovu grupu (retci, stupci) , itd.). Stoga, prije svega, pogledajmo stavke izbornika koje se odnose na oblikovanje ćelija.

U LiO Officeu, kao iu MS Officeu 2003, formatiranje ćelija se provodi kroz stavku izbornika - "Format / Cells" ili korištenjem tipkovničke prečice "Ctrl + 1".

U MS Excelu 2010 formatiranje ćelija se vrši na kartici "Početna".

Ostale stavke izbornika programa MS Excel 2010 (Umetni, Izgled stranice, Formule, Podaci, Pregled itd.) u LiO Calcu nalaze se u stavkama izbornika sličnih naziva.

Sljedeći najvažniji element proračunskih tablica su "Funkcije", ili također poznate kao "Formule".

U MS Excelu i LiO Calc, nazivi (kratice) svih formula su slični, tako da prijelaz s MS Excel na LiO Calc za stručnjake koji rade u MS Excelu neće biti težak.Dosta detaljan popis funkcija i njihova korespondencija u MS Excelu i OOo Calc (LiO Calc) objavljen na web stranici tvrtke "Infra-Resource", vodećeg integratora rješenja temeljenih na OpenOffice.org u Ruskoj Federaciji. Ali ovdje postoje i zamke... Ovo su vruće tipke. Za one koji su navikli raditi u MS Excelu koristeći prečace, moglo bi biti problema, ali i za obične korisnike i organizacije, činjenica da možete uštedjeti najmanje 55 dolara na jednoj kopiji MS Excela može biti od pomoći i prilično ozbiljan poticaj da prijeđi na LiO.


Kompatibilnost

Jedna od najvećih bolnih točaka pri prelasku s MS Excela na LiO Calc su problemi s kompatibilnošću, a najveći problem je rad s makronaredbama. Ovaj problem je bio posebno akutan za verzije OpenOffice.org 1 i 2, počevši od verzije 3 u OpenOffice.org i LibreOffice ovaj problem je praktički riješen. LibreOffice Calc 3.5 može pokrenuti većinu MS Excel makronaredbi. Ova se funkcija uključuje/isključuje u izborniku: Tools > Options > Load/Save > VBA Properties

Analog VBA u LiO Calcu je makro jezik StarBasic (njegova verzija je LibreOffice Basic), koji koristi istu programsku logiku kao Microsoft Visual Basic, tako da stručnjacima koji su radili u MS Excelu s makronaredbama neće biti teško naviknuti se do LiO Izr.

Analog VBA u LiO Calcu je makrojezik StarBasic.

Međutim, problemi su i dalje ostali. Činjenica je da je okruženje u kojem se pišu makronaredbe uredski paket, a ne makro jezik. Dakle, programski jezik nije neovisno okruženje, već je potpuno ovisan o internoj objektnoj strukturi uredskog paketa i sustavu pozivanja naredbi implementiranom u njemu. Rezultat je tehnička nemogućnost osiguravanja pune kompatibilnosti makro jezika različitih uredskih paketa. Stoga morate ponovno napisati Microsoft Office makronaredbe prije nego što ih pokrenete u OpenOffice.org ili LibreOffice. Nadalje, kako ne bih ulazio u sve tehničke detalje, reći ću da postoje programi pretvarača koji uvelike pojednostavljuju rad s VBA makronaredbama u LibreOfficeu. Sva moguća pitanja u vezi s radom s VBA makronaredbama u okruženju OpenOffice također su detaljno razmotrena na web stranici tvrtke Infra-Resource (vidi gore) u odjeljcima "Baza znanja" i "OpenOffice.org korisnička podrška".

Pa, da pojačamo sve gore navedeno, provjerimo u praksi kompatibilnost MS Excel i LiO Calc dokumenata. Da bismo to učinili, uzmimo gotove predloške za računovodstvene dokumente s web stranice časopisa "Glavni računovođa", koji su pripremljeni pomoću MS Excel 97-2003 (XLS ekstenzija) i MS Excel 2010 (XLSX ekstenzija), a koji koriste veliki broj matematičkih i ekonomskih funkcija. Kao rezultat rada s datotekama (otvaranje, uređivanje, spremanje, pretvaranje u ODS) uočen je sljedeći uzorak: u pravilu su se greške prilikom uključivanja makronaredbi javljale u verzijama datoteka spremljenih u MS Excel 98-2003 (.xls) format. U verzijama kreiranim u MS Excelu 2007-2010 pogreške se pojavljuju puno rjeđe.

Datoteke stvorene u MS Excelu bez korištenja makroa mogu se otvarati, čitati, uređivati ​​itd. bez ikakvih problema. Konverzija iz XLSX u ODS i obrnuto također se provodi bez grešaka, a parametri oblikovanja teksta su sačuvani.

Datoteke stvorene u MS Excelu bez korištenja makroa mogu se otvarati, čitati, uređivati ​​itd. bez ikakvih problema.


zaključke

Stoga možemo izvući sljedeće zaključke.

Što se tiče LibreOffice Calc sučelja, korisnici koji su prethodno radili u MS Excelu 98-2003 ne bi trebali imati problema s prelaskom na Calc, a oni koji su navikli raditi s “ribbon” sučeljem MS Excela 2007 - 2010 morat će se naviknuti na to je malo drugačija vrsta radnog prozora.

Podaci se u LiO Calc unose, uređuju i sortiraju na isti način kao iu MS Excelu. Izračuni se izvode u LiO Calc koristeći iste funkcije kao u MS Excelu.

Što se tiče poteškoća u radu s makronaredbama, treba napomenuti da je u verzijama LiO Calc i OOo Calc iznad 3.0 ovaj problem praktički riješen, a ako dođe do bilo kakvih grešaka, moguće je VBA makronaredbe pretvoriti u LibreOffice Basic.

Sergej RYZHKOV