Працюйте з формулами за допомогою Aspose.Cells FOSS
Огляд
Aspose.Cells FOSS дозволяє розробникам Python працювати з формулами у файлах електронних таблиць, використовуючи клас Cell. Властивість formula дозволяє встановлювати або отримувати cell’s formula рядок як простий текст. Формули зберігаються в оригінальному вигляді у файлі XLSX і оцінюються Excel або LibreOffice під час відкриття файлу — сама бібліотека не обчислює результати формул під час виконання.
На цій сторінці розглядаються читання та запис формул за допомогою класу Cell.
Основні концепції
Aspose.Cells FOSS зберігає формули, сумісні з Excel, як прості рядки у файлі XLSX. Коли збережений файл відкривається в Excel або LibreOffice, ці програми обчислюють формули та відображають отримані результати. Бібліотека не виконує обчислення формул під час виконання в Python.
Cell Сховище формул
Клас Cell зберігає формули у своїй властивості formula, яка приймає та повертає рядки формул (наприклад, =A1+B1). Властивість data_type вказує, чи містить клітинка формулу, число, рядок або помилку.
Important:
worksheet.calculate_formula()— це заглушка сумісності і не виконує обчислення формул. Обчислення формул відбувається в Excel або LibreOffice під час відкриття файлу XLSX.
Реалізація
Aspose.Cells FOSS забезпечує обробку формул у Python за допомогою класу Cell. Розробники можуть встановлювати та отримувати формули за допомогою властивості formula.
Встановити формулу в Cell
Використовуйте властивість formula, щоб призначити рядок формули клітинці. Формула зберігається дослівно і буде обчислена Excel або LibreOffice під час відкриття файлу.
from aspose.cells_foss import Workbook
workbook = Workbook()
worksheet = workbook.worksheets[0]
cell = worksheet.cells.get_cell_by_name("A1")
cell.formula = "=10+20"Прочитати формулу з Cell
Отримайте рядок formula за допомогою властивості formula екземпляра Cell. Це повертає необроблений вираз formula, введений користувачем.
formula = cell.formula
print(f"Formula: {formula}")Приклади коду
Наступний приклад записує рядок формули у клітинку та зберігає робочу книгу. Формула буде обчислена Excel або LibreOffice під час відкриття файлу.
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')