العمل مع الصيغ باستخدام Aspose.Cells FOSS
نظرة عامة
يتيح Aspose.Cells FOSS لمطوري Python العمل مع الصيغ في ملفات الجداول باستخدام الفئة Cell. تسمح الخاصية formula بتعيين أو استرجاع سلسلة formula الخاصة بـ cell كنص عادي. تُخزن الصيغ كما هي في ملف XLSX ويتم تقييمها بواسطة Excel أو LibreOffice عند فتح الملف — لا تقوم المكتبة نفسها بتقييم نتائج الصيغ أثناء وقت التشغيل.
تغطي هذه الصفحة قراءة وكتابة الصيغ باستخدام الفئة Cell.
المفاهيم الأساسية
Aspose.Cells FOSS يخزن الصيغ المتوافقة مع Excel كسلاسل نصية عادية في ملف XLSX. عندما يتم فتح الملف المحفوظ في Excel أو LibreOffice، تقوم تلك التطبيقات بتقييم الصيغ وعرض النتائج المحسوبة. المكتبة لا تقوم بتقييم الصيغ أثناء التشغيل في Python.
Cell تخزين الصيغة
تخزن الفئة Cell الصيغ في خاصية formula الخاصة بها، والتي تقبل وتعيد سلاسل الصيغ (مثال، =A1+B1). تشير خاصية data_type إلى ما إذا كانت الخلية تحتوي على صيغة أو رقم أو سلسلة أو خطأ.
مهم:
worksheet.calculate_formula()هو مقطع توافق ولا يقوم بتقييم الصيغ. يتم تقييم الصيغ في Excel أو LibreOffice عند فتح ملف XLSX.
التنفيذ
يتيح Aspose.Cells FOSS معالجة الصيغ في بايثون عبر الفئة 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')