LibreOffice Calc Pomocník pro vzorce
Pythonový nástroj pro rychlé vytváření, testování a správu vzorců v LibreOffice Calc – se systémem oblíbených, týmovou synchronizací, vícejazyčnou podporou a správcem zásuvných modulů.
🚀 Funkce
📑 4 záložky s více než 60 funkcemi
🌐 38 jazyků (vč. hindštiny s automatickou instalací písma)
⭐ Systém oblíbených (lokálně i týmová synchronizace přes síťové úložiště)
🛠 Administrátorský panel pro týmové oblíbené (chráněný heslem)
📋 Vzorce připravené ke vložení se zvýrazněním syntaxe
✏️ Upravitelné výstupní pole s funkcí undo/redo
📖 Integrovaná nápověda a přehled funkcí (pro každý jazyk)
💾 Automatické ukládání (JSON, atomický zápis)
🌙 Tmavý režim
🔌 Správce zásuvných modulů pro vytváření vlastních modulů se vzorci
🔤 Podpora RTL (zprava doleva) – automatické rozpoznání směru písma
🗄️ Zálohování a obnovení – uložení všech nastavení a oblíbených s názvem a heslem
⌨️ Globální klávesová zkratka Ctrl+F12 pro minimalizaci/obnovení okna
🔍 Validátor JSON – automatická kontrola a oprava languages.json a formula_explanations.json
🖥️ Použití
1. Zadejte hodnoty
Rozsah buněk (např. A1:A10)
Buňka 1 / Buňka 2 (např. A1, B1)
Volitelný parametr (např. text nebo index)
Volitelný režim reference: A1, $A1, A$1, $A$1
2. Vyberte funkci Zvolte záložku a klikněte na funkci – vzorec se vygeneruje okamžitě.
3. Upravte vzorec Vygenerovaný vzorec lze přímo upravit ve výstupním poli.
4. Zkopírujte Zkopírujte do schránky jediným kliknutím (vč. barev syntaxe).
5. Používejte oblíbené
⭐ Uložit → uložení aktuálního vzorce (Ctrl+S)
📂 Načíst → opětovné použití uloženého vzorce
❌ Smazat → klávesa Delete nebo tlačítko
🕐 Historie → naposledy použité vzorce
📊 Přehled záložek
Záložka 1 – Základní funkce + - \* / ^ SUM, AVERAGE, MIN, MAX, MEDIAN, COUNT, COUNTA, SUMPRODUCT
Záložka 2 – Pokročilé funkce IF, AND, OR, NOT SUMIF, COUNTIF, AVERAGEIF, SUMIFS, STDEV, VAR, COUNTBLANK, LARGE
Záložka 3 – Datum a text TODAY, NOW, YEAR, MONTH, DAY, DATE, DATEDIF, WEEKDAY CONCATENATE, LEN, LEFT, RIGHT, MID, UPPER, LOWER, TRIM
Záložka 4 – Vyhledávání a zaokrouhlování VLOOKUP, HLOOKUP, INDEX, MATCH, INDEX+MATCH ROUND, ROUNDUP, ROUNDDOWN, INT, TRUNC, ABS, MOD, SQRT, RAND
📖 Vysvětlení vzorců z dokumentace LibreOffice
Soubor formula_explanations.json je plněn přímo z oficiální dokumentace LibreOffice Calc (https://help.libreoffice.org).
Zdroj dat a aktualizace
Popisy, syntaktické informace a příklady jsou přebírány z oficiálního webu nápovědy LibreOffice
Podporované jazyky závisí na překladech dostupných na webu
Soubor obsahuje pro každou funkci: název, syntaxi, popis, příklad a kategorii
Doplnění nebo opravy lze provést ručně (viz Validátor JSON)
Struktura formula_explanations.json
`json
{
"SUM": {
"cs": {
"syntax": "SUM(Číslo1; Číslo2; ...)",
"description": "Sečte všechna čísla v rozsahu buněk.",
"example": "=SUM(A1:A10)"
},
"en": {
"syntax": "SUM(Number1; Number2; ...)",
"description": "Adds all numbers in a cell range.",
"example": "=SUM(A1:A10)"
}
}
}
`
| Pole | Povinné | Popis |
|------|---------|-------|
| syntax | ✅ | Syntaxe vzorce s parametry |
| description | ✅ | Stručný popis funkce |
| example | ✅ | Příklad použití jako hotový vzorec |
| note | ❌ | Volitelná poznámka |
💡 Poznámka: Pokud pro daný jazyk není žádný záznam, aplikace automaticky přejde na anglickou verzi.
---
🔍 Validátor JSON pro jazykové soubory
Integrovaný validátor JSON kontroluje a opravuje languages.json i formula_explanations.json z hlediska konzistence, úplnosti a správnosti názvů zemí. Přístupný přes Nastavení → 🔍 Validátor JSON.
Co se kontroluje?
#### languages.json
✅ Všech 38 jazyků je přítomno (podle kódu ISO 639-1)
✅ Správné názvy zemí a jazyků (např. "cs" → "Čeština")
✅ Žádné duplicitní jazykové kódy
✅ Povinná pole jsou přítomna: name, native_name, flag, rtl
✅ RTL označení je správně nastaveno (Arabština, Hebrejština, Perština, Urdština → "rtl": true)
#### formula_explanations.json
✅ Všechny funkce ze 4 záložek jsou zapsány
✅ Povinná pole jsou přítomna: syntax, description, example
✅ Žádná prázdná pole ("" nebo null)
✅ Jazykové kódy odpovídají languages.json
Funkce oprav
| Typ chyby | Automatická oprava |
|-----------|-------------------|
| Nesprávný název země | Nahrazen správným názvem podle ISO standardu |
| Chybějící jazykový záznam | Doplněn anglickou záložní verzí |
| Prázdné povinné pole | Označeno jako "[MISSING]" k ruční kontrole |
| Duplicitní záznam | Duplicity odstraněny, ponechán úplnější záznam |
| Nesprávný RTL příznak | Automaticky opraven podle známých RTL kódů |
Postup práce
1. Otevřete Nastavení → 🔍 Validátor JSON
2. Vyberte soubor: languages.json nebo formula_explanations.json (nebo oba)
3. 🔎 Zkontrolovat – zobrazí všechny nalezené problémy
4. 🛠 Automaticky opravit – opraví všechny automaticky řešitelné chyby
5. 💾 Uložit – atomicky zapíše opravený soubor
6. 📋 Exportovat zprávu (volitelně) – uloží textový soubor se všemi nálezy
⚠️ Poznámka: Před každou automatickou opravou je vytvořena záloha původního souboru (languages.json.bak / formula_explanations.json.bak).
⭐ Systém oblíbených
Ukládejte a opakovaně používejte vlastní vzorce
Jasné oddělení osobních a týmových oblíbených
Týmové oblíbené jsou pouze pro čtení (upravovat je může jen administrátor)
Duplicitní záznamy jsou automaticky zamezeny
Volné řazení osobních oblíbených
Synchronizace přes síťové úložiště (volitelně konfigurovatelné)
Týmová synchronizace
V Nastavení → 🌐 Síťová cesta lze zadat cestu k síťovému úložišti (např. \\\\Server\\Share\\formulas).
Při spuštění: síťové oblíbené se uloží lokálně do mezipaměti (záložní offline režim)
Při ukládání: vlastní vzorce se zapíší do sítě; týmové vzorce zůstanou nedotčeny
🛠 Administrátorský panel
Přístupný přes tlačítko 🛠. Při prvním kliknutí se nastaví heslo (PBKDF2-SHA256, ukládá se pouze hash).
Přidávání, úprava a mazání týmových vzorců
Změna hesla
Přímý zápis změn na síťové úložiště
🔌 Správce zásuvných modulů
Správce zásuvných modulů (plugin_manager.py) je samostatný nástroj pro vytváření a správu vlastních modulů se vzorci pro Calc2. Nachází se ve stejné složce jako Calc2.py a spouští se tlačítkem 🔌 v Calc2.py.
Funkce
Vytvoření nového modulu – průvodce krok za krokem (název, vzorce, překlady, souhrn)
Přidání vzorců – přidání vzorců do existujícího modulu
Úprava překladů – překlad názvů vzorců do všech 38 jazyků
Otevření složky modulu – přímo v průzkumníku souborů
Smazání modulu – s potvrzovacím dialogem
Struktura modulu
Každý modul je uložen jako podsložka v plugins/ a skládá se ze dvou souborů:
`
plugins/
my_plugin/
plugin.json ← metadata (název, verze, autor, popis)
formulas.json ← vzorce s překlady
`
Příklad plugin.json:
`json
{
"id": "my_plugin",
"enabled": true,
"version": "1.0",
"author": "Vaše jméno",
"icon": "💰",
"name": { "en": "Finance Formulas", "cs": "Finanční vzorce" },
"description": { "en": "Useful formulas for financial calculations." }
}
`
Příklad formulas.json:
`json
[
{
"formula": "=SUM(A1:A10)",
"name": { "en": "Sum of range", "cs": "Součet rozsahu" },
"description": { "en": "Adds all values in A1:A10." },
"category": { "en": "Basic", "cs": "Základní" }
}
]
`
Důležitá poznámka (⚠️)
Správce zásuvných modulů obsahuje tlačítko ⚠️ Important Notice. Po kliknutí se otevře okno se všemi pravidly pro správné vytváření modulů (v angličtině). Stejné informace jsou k dispozici také v souboru IMPORTANT_NOTICE.md.
🌐 Vícejazyčná podpora
K dispozici je 38 jazyků, přepínatelných přímo v aplikaci.
Nové jazyky lze přidat tlačítkem 🌍 pomocí průvodce jazyky.
Poznámka k hindštině (हिंदी): Při prvním přepnutí na hindštinu se jednorázově nainstaluje systémové písmo *Noto Sans Devanagari*. Systém Windows vyžádá oprávnění správce.
🔤 Podpora RTL (zprava doleva)
Jazyky s písmem zprava doleva jsou automaticky rozpoznány a celé rozhraní se zrcadlí:
Arabština (عربي) – automatické rozpoznání RTL
Hebrejština (עברית) – automatické rozpoznání RTL
Perština / Fársí (فارسی) – automatické rozpoznání RTL
Urdština (اردو) – automatické rozpoznání RTL
Co se při RTL změní: Celé rozložení UI se zrcadlí, vstupní pole používají RTL zarovnání, písmo se automaticky přepne na RTL kompatibilní (např. *Noto Sans Arabic*, *Noto Sans Hebrew*).
💡 Poznámka: Generované vzorce LibreOffice zůstávají vždy v syntaxi LTR.
🗄️ Zálohování a obnovení
Vytvoření zálohy
Přes Nastavení → 🗄️ Vytvořit zálohu:
1. Název – libovolný popis zálohy (např. Backup_Mai_2025)
2. Heslo – záloha je šifrována AES; bez hesla nelze obnovit
3. Umístění – lokální nebo síťové úložiště
4. Klikněte na 💾 Vytvořit zálohu – vytvoří se soubor .calc2backup
Obsah zálohy: Všechny oblíbené, nastavení, týmové oblíbené (volitelně), nainstalované moduly.
Obnovení zálohy
Přes Nastavení → 📂 Obnovit zálohu:
1. Vyberte soubor zálohy (.calc2backup)
2. Zadejte heslo
3. Zvolte rozsah obnovení: jen oblíbené / jen nastavení / vše
4. Klikněte na 🔄 Obnovit
⚠️ Při obnovení jsou stávající data přepsána. Před obnovením je nabídnuto automatické zálohy aktuálních dat.
💡 Tipy
$A$1 → absolutní reference (rozbalovací nabídka vedle polí buněk)
Ctrl+S → uložení vzorce do oblíbených
Ctrl+C → kopírování vzorce (pokud není fokus v textovém poli)
Ctrl+Z / Ctrl+Y → zpět / znovu
Ctrl+F12 → minimalizace / obnovení okna (funguje i když je Calc2 minimalizován)
Klávesa Delete v seznamu oblíbených → smazání záznamu
Vzorce lze po vygenerování upravit přímo ve výstupním poli
📁 Struktura projektu
`
Calc2.py ← hlavní aplikace
plugin_manager.py ← správce zásuvných modulů
IMPORTANT_NOTICE.md ← poznámky k vytváření modulů
data/
README_de.md / README_en.md / ... ← nápověda pro každý jazyk
REFERENZ_de.md / REFERENZ_en.md / ... ← přehled funkcí pro každý jazyk
language/
languages.json ← překlady UI (38 jazyků)
formula_explanations.json
services/
language_tool.py ← průvodce: přidání nového jazyka
settings_service.py
auth_service.py
favorites_service.py
network_sync.py
install_service.py
backup_service.py ← zálohování a obnovení
json_validator.py ← kontrola a oprava languages.json / formula_explanations.json
plugins/ ← složka modulů (vytváří se automaticky)
my_plugin/
plugin.json
formulas.json
fonts/
NotoSansDevanagari-Regular.ttf ← písmo pro hindštinu
NotoSansArabic-Regular.ttf ← arabské písmo (RTL)
NotoSansHebrew-Regular.ttf ← hebrejské písmo (RTL)
python/ ← vestavěný Python
python.exe
...
settings.json ← vytváří se automaticky
favoriten.json ← lokální oblíbené (vytváří se automaticky)
`
🧠 Technické zajímavosti
Atomický zápis souborů → zabraňuje poškození souborů při ukládání
Servisní architektura → logika a UI jsou striktně odděleny
Automatická migrace → staré formáty oblíbených jsou rozpoznány a převedeny
Robustní zpracování chyb → poškozené soubory nezpůsobí pád aplikace
Zvýraznění syntaxe → vzorce jsou zobrazeny barevně
Tmavý režim → plně podporován
Systém zásuvných modulů → Calc2 lze rozšířit vlastními moduly se vzorci
RTL modul → automatické rozpoznání RTL jazyků, úplné zrcadlení UI včetně odpovídajících písem
Zálohování a obnovení → zálohy šifrované AES s názvem a heslem, selektivní obnovení
Validátor JSON → automatická kontrola a oprava languages.json a formula_explanations.json vč. názvů zemí a povinných polí
Zdroj LibreOffice → formula_explanations.json je plněn z oficiální dokumentace LibreOffice Calc (https://help.libreoffice.org)
Globální klávesová zkratka → Ctrl+F12 funguje systémově přes knihovnu keyboard (vlákno na pozadí)
Licence
Volně použitelné pro osobní i komerční účely.