Práca s formulami s Aspose.Cells FOSS

Prehľad

Aspose.Cells FOSS umožňuje vývojárom Python pracovať s formulami v tabuľkových súboroch pomocou triedy Cell. Vlastnosť formula umožňuje nastaviť alebo získať reťazec formula objektu cell ako obyčajný text. Formuly sú uložené doslovne v súbore XLSX a vyhodnocuje ich Excel alebo LibreOffice pri otvorení súboru — knižnica sama nevyhodnocuje výsledky formulí za behu.

Táto stránka pokrýva čítanie a zápis vzorcov pomocou triedy Cell.

Základné koncepty

Aspose.Cells FOSS ukladá Excel‑kompatibilné vzorce ako obyčajné reťazce v súbore XLSX. Keď je uložený súbor otvorený v Exceli alebo LibreOffice, tieto aplikácie vyhodnocujú vzorce a zobrazujú vypočítané výsledky. Knižnica nevyhodnocuje vzorce za behu v Pythone.

Cell Ukladanie vzorca

Trieda Cell ukladá vzorce vo svojej vlastnosti formula, ktorá prijíma a vracia reťazce vzorcov (napr. =A1+B1). Vlastnosť data_type udáva, či bunka obsahuje vzorec, číslo, reťazec alebo chybu.

Dôležité: worksheet.calculate_formula() je kompatibilná náhrada a nevyhodnocuje vzorce. Vyhodnocovanie vzorcov prebieha v Exceli alebo LibreOffice, keď je súbor XLSX otvorený.

Implementácia

Aspose.Cells FOSS umožňuje spracovanie vzorcov v Pythone prostredníctvom triedy Cell. Vývojári môžu nastaviť a načítať vzorce pomocou vlastnosti formula.

Nastavte vzorec v Cell

Použite vlastnosť formula na priradenie reťazca vzorca do bunky. Vzorec je uložený doslovne a bude vyhodnotený programom Excel alebo LibreOffice pri otvorení súboru.

from aspose.cells_foss import Workbook

workbook = Workbook()
worksheet = workbook.worksheets[0]
cell = worksheet.cells.get_cell_by_name("A1")
cell.formula = "=10+20"

Prečítajte vzorec z Cell

Získajte reťazec formula pomocou vlastnosti formula inštancie Cell. Toto vráti surový výraz formula zadaný používateľom.

formula = cell.formula
print(f"Formula: {formula}")

Príklady kódu

Nasledujúci príklad zapíše reťazec vzorca do bunky a uloží zošit. Vzorec bude vyhodnotený v programe Excel alebo LibreOffice pri otvorení súboru.

from aspose.cells_foss import Workbook

# Create a new workbook and access the first worksheet
workbook = Workbook()
worksheet = workbook.worksheets[0]

# Set a value in A1 and a SUM formula in A2
worksheet.cells.get_cell_by_name('A1').value = 42
worksheet.cells.get_cell_by_name('A2').formula = '=SUM(A1, 10)'

# Save — Excel will compute =SUM(A1, 10) = 52 when it opens the file
workbook.save('formulas.xlsx')
print('Saved formulas.xlsx')

Pozri tiež

 Slovenčina