Aspose.Cells هو أكثر من مجرد قارئ/كاتب جداول بيانات - إنه محرك حسابات وتقرير متوافق مع Excel يتيح لك تحويل البيانات الخام إلى مستندات تقارير دون الحاجة إلى تثبيت Microsoft Office في أي مكان في خط أنابيبك. هنا خريطة موسعة لما يبدو عليه “تحليل البيانات، المعالجة، والتقارير المهنية” مع واجهة برمجة التطبيقات، بالإضافة إلى أرقام الأداء المحددة وأنماط التعليمات البرمجية التي يمكنك لصقها في مشروعك الخاص اليوم.

1. التحضير البيئي

أولاً، تأكد من تثبيت مكتبة Aspose.Cells لـ Go عبر C++.

# Linux/macOS
ls $(go env GOMODCACHE)

# Windows (PowerShell)
Get-ChildItem $env:GOPATH\github.com\aspose-cells\aspose-cells-go-cpp\

ثانيًا، كيفية تثبيت مكتبة Aspose.Cells لـ Go عبر C++، يرجى الرجوع إلى وثيقة Aspose.Cells لـ Go عبر C++ على الإنترنت أو Readme Aspose.Cells لـ Go عبر C++.

2. تحميل البيانات والعمليات الأساسية

الوظائف الرئيسية في Aspose.Cells لـ Go عبر C++:

  • إنشاء أو تحميل جدول بيانات
  • فرز البيانات
  • تصفية البيانات
  • التنسيق الشرطي

سنستفيد من نظام GoLang البيئي، جنبًا إلى جنب مع واجهات برمجة التطبيقات Aspose.Cells لـ Go عبر C++، التعليمات البرمجية العملية، سيناريوهات التطبيق، وأفضل الممارسات، لمساعدة العملاء على التعامل بكفاءة مع بيانات Excel.

  1. يرجى مراجعة التعليمات البرمجية التالية لتعلم كيفية إنشاء جدول بيانات أو تحميل جدول موجود.
// إنشاء مصنف جديد، والحصول على ورقة العمل ذات الفهرس 0
workbook, _ := NewWorkbook()
worksheets, _ := workbook.GetWorksheets()
worksheet, _ := worksheets.Get_Int(0)

// تحميل ملف Excel موجود، والحصول على ورقة العمل ذات الفهرس 0
sourceWorkbook, _ := NewWorkbook_String("data_source.xlsx")
sourceWorksheets, _ := sourceWorkbook.GetWorksheets()
sourceWorksheet, _ := sourceWorksheets.Get_Int(0)
  1. يرجى مراجعة التعليمات البرمجية التالية لتعلم كيفية فرز البيانات في ملف Excel.
// إنشاء منطقة خلية
cell_area ,_ := CellArea_CreateCellArea_Int_Int_Int_Int(0,0,100,10)
// إنشاء DataSorter
sorter, _ = workbook.GetDataSorter()
// تعيين قاعدة ترتيب
sorter.SetOrder1(SortOrder_Ascending)
// تعيين عمود الترتيب
sorter.SetKey1(0)
// فرز
sorter.Sort()
  1. يرجى مراجعة التعليمات البرمجية التالية لتعلم كيفية تصفية البيانات في ملف Excel.
// الحصول على الفلتر التلقائي لورقة العمل
filter,_ = worksheet.GetAutoFilter()
// تعيين النطاق، المعامل هو نطاق الخلية، نوع البيانات هو سلسلة.
filter.SetRange_String("A1:D1000")
// فلتر مخصص، العمود الثاني أكبر من أو يساوي القيمة 100
filter.Filter(1, ">=100");
// تحديث البيانات
filter.Refresh();
  1. يرجى مراجعة التعليمات البرمجية التالية لتعلم كيفية تعيين تنسيق شرطي لمنطقة خلية في ملف Excel.
// الحصول على الخلايا مع ورقة العمل.
cells ,_ := worksheet.GetCells()
// الحصول على شروط التنسيق مع الخلايا.
formatConditions,_ = cells.GetFormatConditions()
// إضافة تنسيق شرطي، إرجاع الفهرس.
index,_ = formatConditions.Add()
// الحصول على تنسيق شرطي مع فهرس شرط التنسيق.
condition,_ = formatConditions.Get(index)
// تعيين قواعد التنسيق الشرطي
// تعيين صيغة التنسيق الشرطي
condition.SetFormula1_String("=B2>1000")
// تعيين مشغل التنسيق الشرطي
condition.SetOperator(OperatorType_GreaterThan)
// تعيين نمط التنسيق
// إنشاء نمط جديد
style,_ := workbook.CreateStyle();
// الحصول على خط النمط
font,_ := style.GetFont()
// الحصول على اللون الأحمر
red_color, _ := Color_Red()
// تعيين لون الخط إلى اللون الأحمر
font.SetColor(red_color)
// تعيين الخط عريض
font.SetIsBold(true)
// تعيين النمط إلى التنسيق الشرطي
condition.SetStyle(style)

3. تحليل البيانات المتقدم

  • جدول محوري

    يقوم الجدول المحوري بإجراء تلخيص متعدد الأبعاد للبيانات الخام للحصول على رؤى سريعة حول الاتجاهات، المقارنات، والتوزيعات. مثال: يتم تلخيص بيانات المبيعات حسب المنطقة، فئة المنتج، والربع لتحليل أي منتج يحقق أفضل أداء في أي منطقة.

  • صيغة

    تضمين صيغ ديناميكية في Excel لجعل التقارير تتحدث تلقائيًا (على سبيل المثال، هامش الربح = الربح / المبيعات). مثال: إضافة عمود “هامش إجمالي” في جدول ملخص مع الصيغة (الإيرادات - التكلفة) / الإيرادات، والتي تعيد حسابها تلقائيًا عند تحديث البيانات الأصلية.

  • رسوم بيانية

    تصور الرسوم البيانية البيانات، مما يسهل التعرف بسرعة على الأنماط، الشذوذ، والاتجاهات. مثال: رسم بياني عمودي يظهر المبيعات حسب المنطقة، أو رسم بياني خطي لسلسلة زمنية لمبيعات المنتج.

  1. يرجى مراجعة التعليمات البرمجية التالية لتعلم كيفية استخدام جدول محوري لعرض البيانات في ملف Excel.
// الحصول على حاوية الجدول المحوري لورقة العمل.
pivotTables,_ := worksheet.GetPivotTables()
// إنشاء جدول محوري، إرجاع الفهرس.
index,_ := pivotTables.Add_String_String_String("=A1:D100", "E3", "PivotTable1")
// الحصول على جدول محوري مع الفهرس
pivotTable,_ := pivotTables.Get_Int(index);

// تكوين حقول PivotTable لجدول محوري.
// إضافة حقل صف.
pivotTable.AddFieldToArea_PivotFieldType_Int(PivotFieldType_Row, 0)
// إضافة حقل عمود.
pivotTable.AddFieldToArea_PivotFieldType_Int(PivotFieldType_Column, 1)
// إضافة حقل بيانات.
pivotTable.AddFieldToArea_PivotFieldType_Int(PivotFieldType_Data, 3)
// تعيين طريقة تلخيص البيانات
dataFields,_ := pivotTable.GetDataFields()
dataField, _ := dataFields.Get_Int(0)
dataField.SetFunction(ConsolidationFunction_Sum);

pivotTable.CalculateData();
  1. يرجى مراجعة التعليمات البرمجية التالية لتعلم كيفية استخدام حساب الصيغة لعرض البيانات في ملف Excel.
// الحصول على الخلايا مع ورقة العمل.
cells, := worksheet.GetCells()
// الحصول على الخلية E2.
cell, _ := cells.Get_String("E2")
// تعيين الصيغة
cell.setFormula("=SUM(B2:D2)")
// حساب جميع الصيغ في جدول البيانات
workbook.calculateFormula();
// الحصول على نتيجة حساب الصيغة
cells ,_ = worksheet.GetCells()
cell,_ cells.Get_String("E2")
result,_ := cell.GetDoubleValue()
  1. يرجى مراجعة التعليمات البرمجية التالية لتعلم كيفية توليد رسم بياني لعرض البيانات في ملف Excel.
// إضافة رسم بياني
charts,_ := worksheet.GetCharts()
chart_index,_ := charts.Add_ChartType_Int_Int_Int_Int(ChartType_Column, 5, 0, 15, 5)
chart,_ := charts.Get_Int(chartIndex);

// تعيين منطقة بيانات الرسم البياني
nseries, _ := chart.GetNSeries()
nseries.Add_String_Bool("=Sheet1!$B$2:$D$10", true)

// تعيين بيانات محور الفئات
nseries.SetCategoryData("=Sheet1!$A$2:$A$10")

// تعيين عنوان الرسم البياني
chart_title,_ := chart.GetTitle()
chart_title.SetText("تحليل بيانات المبيعات");

4. توليد تقرير مخصص

يمكنك تحديد هيكل وأسلوب التقرير وفقًا لاحتياجات العميل. هنا، نحدد نمط تقرير بسيط، والذي يتضمن جدول بيانات وعرض الرسم البياني المقابل له.