Rad sa formulama uz Aspose.Cells FOSS
Pregled
Aspose.Cells FOSS omogućava Python programerima da rade sa formulama u tabelarnim fajlovima koristeći klasu Cell. Svojstvo formula omogućava postavljanje ili dohvat cell‑ovog formula stringa kao običan tekst. Formule se čuvaju doslovno u XLSX fajlu i ocenjuju ih Excel ili LibreOffice prilikom otvaranja fajla — sama biblioteka ne ocenjuje rezultate formula u vreme izvršavanja.
Ova stranica pokriva čitanje i pisanje formula koristeći klasu Cell.
Osnovni koncepti
Aspose.Cells FOSS čuva Excel‑kompatibilne formule kao obične stringove u XLSX fajlu. Kada se sačuvani fajl otvori u Excelu ili LibreOffice‑u, te aplikacije evaluiraju formule i prikazuju izračunate rezultate. Biblioteka ne evaluira formule u runtime‑u u Pythonu.
Cell Skladište formula
Klasa Cell čuva formule u svojoj svojstvu formula, koje prihvata i vraća stringove formula (npr., =A1+B1). Svojstvo data_type označava da li ćelija sadrži formulu, broj, string ili grešku.
Važno:
worksheet.calculate_formula()je stub kompatibilnosti i ne vrši evaluaciju formula. Evaluacija formula se vrši u Excelu ili LibreOffice‑u kada se otvori XLSX fajl.
Implementacija
Aspose.Cells FOSS omogućava rad sa formulama u Pythonu putem klase Cell. Programeri mogu postaviti i dohvatiti formule koristeći svojstvo formula.
Postavite formulu u Cell
Koristite svojstvo formula da dodelite formulu u obliku stringa ćeliji. Formula se čuva doslovno i biće evaluirana od strane Excel‑a ili LibreOffice‑a kada se fajl otvori.
from aspose.cells_foss import Workbook
workbook = Workbook()
worksheet = workbook.worksheets[0]
cell = worksheet.cells.get_cell_by_name("A1")
cell.formula = "=10+20"Čitanje formule iz Cell
Preuzmite formula string koristeći formula svojstvo Cell instance. Ovo vraća sirovi formula izraz onako kako ga je korisnik uneo.
formula = cell.formula
print(f"Formula: {formula}")Primeri koda
Sledeći primer upisuje string formule u ćeliju i čuva radnu svesku. Formula će biti evaluirana od strane Excel‑a ili LibreOffice‑a kada se fajl otvori.
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')