Arbeid med formler med Aspose.Cells FOSS
Oversikt
Aspose.Cells FOSS gjør det mulig for Python‑utviklere å arbeide med formler i regnearkfiler ved hjelp av Cell‑klassen. formula‑egenskapen gjør det mulig å sette eller hente en cells formula‑streng som ren tekst. Formler lagres ordrett i XLSX‑filen og evalueres av Excel eller LibreOffice når filen åpnes — biblioteket selv evaluerer ikke formelresultater ved kjøretid.
Denne siden dekker lesing og skriving av formler ved hjelp av Cell-klassen.
Kjernebegreper
Aspose.Cells FOSS lagrer Excel‑kompatible formler som vanlige strenger i XLSX‑filen. Når den lagrede filen åpnes i Excel eller LibreOffice, evaluerer disse programmene formlene og viser beregnede resultater. Biblioteket evaluerer ikke formler ved kjøring i Python.
Cell Formellagring
Klassen Cell lagrer formler i sin formula‑egenskap, som godtar og returnerer formelstrenger (f.eks. =A1+B1). data_type‑egenskapen indikerer om cellen inneholder en formel, et tall, en streng eller en feil.
Viktig:
worksheet.calculate_formula()er en kompatibilitetsstub og evaluerer ikke formler. Formelevaluering skjer i Excel eller LibreOffice når XLSX-filen åpnes.
Implementering
Aspose.Cells FOSS gjør formelhåndtering i Python mulig via Cell-klassen. Utviklere kan sette og hente formler ved hjelp av formula-egenskapen.
Angi en formel i en Cell
Bruk formula‑egenskapen til å tilordne en formelstreng til en celle. Formelen lagres ordrett og vil bli evaluert av Excel eller LibreOffice når filen åpnes.
from aspose.cells_foss import Workbook
workbook = Workbook()
worksheet = workbook.worksheets[0]
cell = worksheet.cells.get_cell_by_name("A1")
cell.formula = "=10+20"Les en formel fra en Cell
Hent formula‑strengen ved å bruke formula‑egenskapen til en Cell‑instans. Dette returnerer det rå formula‑uttrykket som brukeren skrev inn.
formula = cell.formula
print(f"Formula: {formula}")Kodeeksempler
Følgende eksempel skriver en formelstreng til en celle og lagrer arbeidsboken. Formelen vil bli evaluert av Excel eller LibreOffice når filen åpnes.
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')