Používateľom definované funkcie

Používateľom definované funkcie v LibreOffice Calc použijete takto:

Definovanie funkcie v LibreOffice Basic

  1. Zvoľte Nástroje - Makrá - Správca makier - LibreOffice Basic.

  2. Kliknite na tlačidlo Upraviť. Otvorí sa rozhranie IDE jazyka Basic.

  3. Zadajte kód funkcie. V našom príklade si zadefinujeme funkciu VOL(a; b; c), ktorá počíta obsah kvádra so stranami a, b a c:

    Function VOL(a, b, c)
    VOL = a*b*c
    End Function

  4. Zatvorte okno rozhranie IDE jazyka Basic.

    Funkcia je automaticky uložená v štandardnom module a je k dispozícii. Ak ju použijete v dokumente, ktorý má byť otvorený na inom počítači, je možné ju do dokumentu skopírovať takto:

Skopírovanie funkcie do dokumentu

V kroku 2 "Definovanie funkcie v LibreOffice Basic" ste v dialógu Makrá klikli na Upraviť. Ako implicitný je v poli Makro z vybraný modul Moje makrá - Štandard - Module1. Knižnica Štandard je uložená lokálne vo vašom domovskom adresári.

Ak chcete skopírovať používateľom definovanú funkciu do dokumentu Calc:

  1. Zvoľte Nástroje - Makrá - Usporiadať makrá - LibreOffice Basic.

  2. V poli Makro z vyberte Moje makrá - Štandard - Module1 a kliknite na tlačidlo Upraviť.

  3. V rozhraní IDE jazyka Basic označte zdrojový kód funkcie a skopírujte ju do schránky.

  4. Zatvorte okno rozhranie IDE jazyka Basic.

  5. Zvoľte Nástroje - Makrá - Usporiadať makrá - LibreOffice Basic.

  6. V poli Makro z vyberte (názov dokumentu Calc) - Štandard - Module1 a kliknite na tlačidlo Upraviť.

  7. Vložte obsah schránky do dokumentu do rozhrania IDE jazyka Basic.

Použitie používateľom definovanej funkcie v LibreOffice Calc

Ak máte definovanú funkciu VOL(a; b; c) v rozhraní IDE jazyka Basic, je možné ju používať rovnako ako vstavané funkcie LibreOffice Calc.

  1. Otvorte dokument Calc a do buniek A1, B1 a C1 zadajte hodnoty pre parametre a, b a c funkcie.

  2. Nastavte kurzor do inej bunky a zadajte:

    =VOL(A1;B1;C1)

  3. Bude prevedený výpočet funkcie a vo vybranej bunke sa zobrazí jeho výsledok.