Arbeta med formler med Aspose.Cells FOSS
Översikt
Aspose.Cells FOSS möjliggör för Python‑utvecklare att arbeta med formler i kalkylbladsfiler med hjälp av Cell‑klassen. formula‑egenskapen tillåter att sätta eller hämta en cells formula‑sträng som vanlig text. Formler lagras ordagrant i XLSX‑filen och utvärderas av Excel eller LibreOffice när filen öppnas — biblioteket själv utvärderar inte formelresultat vid körning.
Den här sidan täcker läsning och skrivning av formler med klassen Cell.
Kärnbegrepp
Aspose.Cells FOSS lagrar Excel‑kompatibla formler som rena strängar i XLSX‑filen. När den sparade filen öppnas i Excel eller LibreOffice utvärderar dessa program formlerna och visar beräknade resultat. Biblioteket utvärderar inte formler vid körning i Python.
Cell Formellagring
Klassen Cell lagrar formler i sin formula‑egenskap, som accepterar och returnerar formelsträngar (t.ex. =A1+B1). data_type‑egenskapen indikerar om cellen innehåller en formel, ett tal, en sträng eller ett fel.
Important:
worksheet.calculate_formula()är en kompatibilitetsstub och utvärderar inte formler. Formelutvärdering sker i Excel eller LibreOffice när XLSX-filen öppnas.
Implementering
Aspose.Cells FOSS möjliggör formelhantering i Python via Cell-klassen. Utvecklare kan ange och hämta formler med hjälp av egenskapen formula.
Ange en formel i en Cell
Använd egenskapen formula för att tilldela en formelsträng till en cell. Formeln lagras ordagrant och kommer att utvärderas av Excel eller LibreOffice när filen öppnas.
from aspose.cells_foss import Workbook
workbook = Workbook()
worksheet = workbook.worksheets[0]
cell = worksheet.cells.get_cell_by_name("A1")
cell.formula = "=10+20"Läs en Formel från en Cell
Hämta formula‑strängen med hjälp av formula‑egenskapen hos en Cell‑instans. Detta returnerar det råa formula‑uttrycket som användaren angav.
formula = cell.formula
print(f"Formula: {formula}")Kodexempel
Följande exempel skriver en formelsträng till en cell och sparar arbetsboken. Formeln kommer att utvärderas av Excel eller LibreOffice när filen öppnas.
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')