Làm việc với Công thức với Aspose.Cells FOSS

Tổng quan

Aspose.Cells FOSS cho phép các nhà phát triển Python làm việc với công thức trong các tệp bảng tính bằng cách sử dụng lớp Cell. Thuộc tính formula cho phép đặt hoặc lấy chuỗi formula của cell dưới dạng văn bản thuần. Các công thức được lưu nguyên trong tệp XLSX và được Excel hoặc LibreOffice tính toán khi tệp được mở — thư viện tự nó không tính toán kết quả công thức tại thời gian chạy.

Trang này đề cập đến việc đọc và ghi công thức bằng lớp Cell.

Các khái niệm cốt lõi

Aspose.Cells FOSS lưu trữ các công thức tương thích Excel dưới dạng chuỗi thuần trong tệp XLSX. Khi tệp đã lưu được mở trong Excel hoặc LibreOffice, các ứng dụng đó sẽ tính toán các công thức và hiển thị kết quả đã tính. Thư viện không tính toán công thức tại thời gian chạy trong Python.

Cell Lưu trữ công thức

Lớp Cell lưu trữ các công thức trong thuộc tính formula của nó, thuộc tính này chấp nhận và trả về các chuỗi công thức (ví dụ, =A1+B1). Thuộc tính data_type cho biết ô chứa công thức, số, chuỗi hay lỗi.

Important: worksheet.calculate_formula() là một stub tương thích và không thực hiện đánh giá công thức. Việc đánh giá công thức diễn ra trong Excel hoặc LibreOffice khi tệp XLSX được mở.

Triển khai

Aspose.Cells FOSS cho phép xử lý công thức trong Python thông qua lớp Cell. Các nhà phát triển có thể đặt và lấy công thức bằng cách sử dụng thuộc tính formula.

Đặt công thức trong một Cell

Sử dụng thuộc tính formula để gán một chuỗi công thức cho ô. Công thức được lưu nguyên văn và sẽ được Excel hoặc LibreOffice đánh giá khi tệp được mở.

from aspose.cells_foss import Workbook

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

Đọc một công thức từ một Cell

Lấy chuỗi formula bằng cách sử dụng thuộc tính formula của một thể hiện Cell. Điều này trả về biểu thức formula thô như người dùng đã nhập.

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

Ví dụ mã

Ví dụ sau ghi một chuỗi công thức vào một ô và lưu workbook. Công thức sẽ được Excel hoặc LibreOffice đánh giá khi tệp được mở.

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')

Xem thêm

 Tiếng Việt