استيراد ووضع البيانات بذكاء باستخدام العلامات الذكية

مقدمة

العناصر الذكية تُستخدم لإعلام Aspose.Cells عن المعلومات التي يجب وضعها في جدول بيانات Microsoft Excel القالبي. تتيح العناصر الذكية لك إنشاء قوالب تحتوي فقط على معلومات وتنسيقات محددة.

الجدول البياني للمصمم والعلامات الذكية

الأوراق العمل المصممة هي ملفات Excel القياسية التي تحتوي على تنسيقات بصرية وصيغ وعلامات ذكية. يمكن أن تحتوي على علامات ذكية تشير إلى مصدر بيانات واحد أو أكثر، مثل معلومات من مشروع ومعلومات لجهات الاتصال ذات الصلة. يتم كتابة العلامات الذكية في الخلايا حيث ترغب في الحصول على المعلومات.

تبدأ جميع العلامات الذكية بـ &=. مثال لعلامة بيانات هو &=اسمالطرف. إذا أدى مؤشر البيانات إلى أكثر من عنصر واحد، على سبيل المثال، صف كامل، فإن الصفوف التالية تتحرك تلقائيًا لتفسح المساحة للمعلومات الجديدة. بالتالي، يمكن وضع المجموعات الفرعية والإجماليات على الصف بشكل فوري بعد مؤشر البيانات لإجراء حسابات استنادًا إلى المعلومات المُدخلة. لإجراء حسابات على الصفوف المدخلة، استخدم الصيغ الدينامية.

تتكون العلامات الذكية من أجزاء مصدر البيانات واسم الحقل لمعظم المعلومات. قد يتم أيضًا تمرير معلومات خاصة باستخدام المتغيرات ومصفوفات المتغيّرات. تملأ المتغيّرات دائمًا خلية واحدة فقط بينما قد تملأ مصفوفات المتغيّرات عدة. استخدم فقط علامة بيانات واحدة لكل خلية. يتم إزالة العلامات الذكية غير المستخدمة.

قد تحتوي العلامة الذكية أيضًا على معلمات. تتيح لك المعلمات تعديل كيفية توزيع المعلومات. يتم إضافتها إلى نهاية العلامة الذكية بين قوسين كفاصلة مفصولة.

خيارات العلامة الذكية

&=مصدر البيانات.اسم الحقل &=[مصدر البيانات].[اسم الحقل] &=$اسم المتغير &=$مصفوفة_المتغيرات &==الصيغة_الديناميكية &=&=تكرار_الصيغة_الديناميكية

معلمات

يُسمح بالمعلمات التالية:

  • noadd - عدم إضافة صفوف إضافية لتناسب البيانات.
  • skip:n - تخطي n عدد من الصفوف لكل صف من البيانات.
  • تصاعدي:n أو تنازلي:n - ترتيب البيانات في العلامات الذكية. إذا كان n هو 1، فإن العمود هو المفتاح الأول لمُرتب. يتم فرز البيانات بعد معالجة مصدر البيانات. على سبيل المثال: &=جدول1.حقل3(تصاعدي:1).
  • أفقي - اكتب البيانات من اليسار إلى اليمين بدلاً من الأعلى إلى الأسفل.
  • رقمي - تحويل النص إلى رقم إذا كان ذلك ممكنًا.
  • shift - تحريك البيانات إلى الأسفل أو اليمين، مما يخلق صفوفًا أو أعمدة إضافية لتناسب البيانات. يعمل المعلم الإضافي بنفس الطريقة كما هو الحال في Microsoft Excel. على سبيل المثال، في Microsoft Excel، عند تحديد مجموعة من الخلايا، بنقرة يمين الزر واختيار Insert ثم تحديد shift cells down، shift cells right وخيارات أخرى. بإختصار، يقوم المعلم shift بأداء نفس الوظيفة للعلامات الذكية الرأسية/العادية (من الأعلى إلى الأسفل) أو الأفقية (من اليسار إلى اليمين).
  • نسخالأسلوب - استنساخ أسلوب الخلية الأساسية إلى جميع الخلايا في ذلك العمود.

يمكن دمج المعلمات noadd و skip لإدخال البيانات في الصفوف البديلة. نظرًا لأن القالب يتم معالجته من الأسفل إلى الأعلى ، يجب إضافة noadd في الصف الأول لتجنب إدراج صفوف إضافية قبل الصف البديل.

إذا كان لديك عدة معلمات، فاسمح بفصلها بفواصل، ولكن بدون مسافة: معلمة أ، معلمة ب، معلمة ج

تُظهر الصور التوضيحية التالية كيفية إدراج البيانات في كل صف آخر.

ملف القالب ملف الإخراج
todo:image_alt_text todo:image_alt_text

الصيغ الديناميكية

تتيح الصيغ الديناميكية لك إدراج صيغ Excel في الخلايا حتى عندما تشير الصيغة إلى الصفوف التي سيتم إدراجها أثناء عملية التصدير. يمكن للصيغ الديناميكية أن تتكرر لكل صف تم إدراجه أو تستخدم فقط الخلية التي يتم وضع علامة البيانات فيها.

تسمح الصيغ الديناميكية بالخيارات الإضافية التالية:

  • r - رقم الصف الحالي.
  • 2، -1 - الإزاحة إلى رقم الصف الحالي.

على سبيل المثال:

 &=&=B{-1}/C{-1}~(skip:1)

في علامة الصيغة الديناميكية ، “-1” يعني التحريك إلى الصف الحالي في الأعمدة B و C على التوالي والتي سيتم تعيينها لعملية القسمة ، المعلمة التخطي هي صف واحد. علاوة على ذلك ، يجب علينا تحديد الحرف التالي:

 "~"

كحرف فاصل لتطبيق المعلمات الإضافية في الصيغ الديناميكية.

توضح اللقطات الشاشة التالية صيغة ديناميكية متكررة وورقة Excel الناتجة.

ملف القالب ملف الإخراج
todo:image_alt_text todo:image_alt_text
الخلية “C1” تحتوي على الصيغة = A1*B1 ، والخلية “C2” تحتوي على = A2*B2 والخلية “C3” تحتوي على = A3*B3.

من السهل جدًا معالجة العلامات الذكية. يوضح الكود المثال التالي كيفية استخدام الصيغ الديناميكية في العلامات الذكية. نقوم بتحميل ملف القالب وإنشاء بيانات اختبارية، ثم معالجة العلامات لملء البيانات في الخلايا مقابل العلامة.

استخدام مصفوفات متغيرة

يوضح الكود المثالي التالي كيفية استخدام متغيرات الصفوف في العلامات الذكية. نضع علامة صفوف متغيرة في الخلية A1 للورقة العمل الأولى للدفتر بشكل ديناميكي والتي تحتوي على سلسلة من القيم التي نحددها للعلامة، نقوم بمعالجة العلامات لملء البيانات في الخلايا ضد العلامة. أخيرًا نقوم بحفظ ملف Excel.

تجميع البيانات

في بعض تقارير Excel قد تحتاج إلى تقسيم البيانات إلى مجموعات لجعلها أسهل قراءة وتحليل. أحد الأغراض الرئيسية لتقسيم البيانات إلى مجموعات هو تشغيل الحسابات (أداء عمليات ملخصية) على كل مجموعة من السجلات.

تسمح علامات الذكاء في Aspose.Cells لك بتجميع البيانات حسب الحقول ووضع صفوف ملخصية بين مجموعات البيانات أو المجموعات البيانية. على سبيل المثال، إذا تم تجميع البيانات حسب Customers.CustomerID، يمكنك إضافة سجل ملخص في كل مرة يتغير فيها المجموعة.

معلمات

فيما يلي بعض معلمات العلامات الذكية المستخدمة لتجميع البيانات.

group:normal/merge/repeat

نحن ندعم ثلاثة أنواع من التجميع يمكنك الاختيار بينها.

  • عادي - قيمة الحقل (أو الحقول) المجمعة لن تُكرر للسجلات المقابلة في العمود؛ بدلاً من ذلك، يتم طباعتها مرة واحدة لكل مجموعة من البيانات.
  • دمج - نفس السلوك كما في المعلمة العادية، باستثناء أنها تدمج الخلايا في الحقل (أو الحقول) المجمعة لكل مجموعة محددة.
  • تكرار - تُكرر قيمة الحقل (أو الحقول) المجمعة للسجلات المقابلة.

على سبيل المثال: &=Customers.CustomerID(group:merge)

skip

تخطي عدد محدد من الصفوف بعد كل مجموعة.

على سبيل المثال, &=Employees.EmployeeID(group:normal,skip:1)

subtotalN

يؤدي عملية ملخصية لبيانات حقل محددة متعلقة بحقل مجمعة. N يمثل الأرقام بين 1 و 11 التي تحدد الوظيفة المستخدمة عند حساب المجاميع الفرعية داخل قائمة البيانات. (1=متوسط، 2=عدد، 3=COUNTA، 4=MAX، 5=MIN، … 9=SUM إلخ.) راجع المرجع Subtotal في مساعدة Microsoft Excel لمزيد من التفاصيل.

التنسيق ينص بالفعل على: subTotalN:Ref حيث يشير Ref إلى العمود الذي يتم التجميع حسبه.

على سبيل المثال،

  • &=Products.Units(subtotal9:Products.ProductID) يُحدد وظيفة الملخص عن حقل Units بالنسبة لحقل ProductID في جدول Products.
  • &=Tabx.Col3(subtotal9:Tabx.Col1) يُحدد وظيفة الملخص عن حقل Col3 حسب Col1 في الجدول Tabx.
  • &=Table1.ColumnD(subtotal9:Table1.ColumnA&Table1.ColumnB) يحدد وظيفة التلخيص على الحقل ColumnD وفقًا لColumnA و ColumnB في الجدول Table1.

يظهر هذا المثال بعض معلمات التجميع في العمل. يستخدم قاعدة بيانات Microsoft Access بمسمى Northwind.mdb ويستخرج البيانات من الجدول الذي يحمل اسم “تفاصيل الطلب”. ننشئ ملف مصمم يسمى SmartMarker_Designer.xls في Microsoft Excel ونضع علامات ذكية في الخلايا المختلفة في ورقات العمل. يتم معالجة العلامات لملء ورقات العمل. يتم وضع البيانات وتنظيمها حسب حقل تجميع.

يحتوي الملف المصمم على ورقتي عمل. في الأولى نضع علامات ذكية مع معلمات التجميع كما هو مبين في اللقطة أدناه. يتم وضع ثلاث علامات ذكية (بمعلمات تجميع) كما يلي: &=[Order Details].OrderID(group:merge,skip:1), &=[Order Details].Quantity(subtotal9:Order Details.OrderID), و &=[Order Details].UnitPrice(subtotal9:Order Details.OrderID) تذهب إلى A5, B5 و C5 على التوالي.

الورقة العمل الأولى في ملف SmartMarker_Designer.xls، مكتملة بعلامات ذكية
todo:image_alt_text
في الورقة العمل الثانية من ملف المصمم، نضع بعض العلامات الذكية كما هو موضح في الشكل أدناه. نضع العلامات الذكية التالية:
&=[Order Details].OrderID(group:normal),
&=[Order Details].Quantity,
&=[Order Details].UnitPrice,
&=&=B(r)*C(r) و
&=subtotal9:Order Details.OrderID إلى A5، B5، C5، D5 و C6 على التوالي.
الصفحة العملية الثانية لملف SmartMarker_Designer.xls، تظهر علامات ذكية مختلطة.
todo:image_alt_text
هنا هو الشيفرة المصدر المستخدمة في المثال.

استخدام أنواع مجهولة أو كائنات مخصصة

تدعم Aspose.Cells أيضًا أنواع الكائنات المجهولة أو الكائنات المخصصة في العلامات الذكية. يظهر المثال التالي كيف يعمل هذا. لاستيراد البيانات من الكائنات الديناميكية باستخدام العلامات الذكية، قم بزيارة المقالة التالية:

استيراد من كائن ديناميكي كمصدر بيانات

علامات الصورة

تدعم علامات Aspose.Cells الذكية أيضًا علامات الصور. توفر هذه القسم لك كيفية إدراج الصور باستخدام العلامات الذكية.

معلمات الصور

معلمات العلامة الذكية لإدارة الصور.

  • الصورة: تناسب الخلية - تكييف الصورة تلقائيًا مع ارتفاع الصف وعرض العمود.
  • الصورة: مقياس N - تغيير حجم الارتفاع والعرض إلى N في المئة.
  • صورة: العرض: N في البوصة والارتفاع: N في البوصة - عرض الصورة بارتفاع N بالبوصة وعرض N بالبوصة. يمكنك أيضًا تحديد مواقع اليسار والأعلى (بالنقاط).

هنا هو الشيفرة المصدر المستخدمة في المثال.

استخدام الكائنات المتداخلة

تدعم Aspose.Cells الكائنات المتدرجة في العلامات الذكية، ويجب أن تكون الكائنات المتدرجة بسيطة. نحن نستخدم ملف قالب بسيط. راجع جدول التصميم الذي يحتوي على بعض العلامات الذكية المتدرجة.

الصفحة العملية الأولى لملف SM_NestedObjects.xlsx التي تظهر علامات ذكية متدرجة.
todo:image_alt_text
المثال التالي يوضح كيف يعمل هذا.

استخدام قائمة عامة ككائن متداخل

تدعم Aspose.Cells الآن أيضًا استخدام القائمة العامة ككائن متداخل. يرجى التحقق من لقطة الشاشة لملف الإكسل الناتج الذي تم إنشاؤه بالشيفرة التالية. كما يمكنك رؤية في لقطة الشاشة أنَّ كائن المعلم يحتوي على عدة كائنات متداخلة للطلاب.

todo:image_alt_text

استخدام خاصية HTML للعلامات الذكية

The following sample code explains the use of HTML property of the Smart Markers. When it will be processed, it will show “World” in “Hello World” as bold because of HTML tag.

ليس بشكل سطري

الطريقة الحالية الافتراضية للمعالجة هي معالجة العناصر الذكية بشكل سطري. ولكن في بعض الأحيان، يحتاج علامات الذكاء الذكية في نفس جدول البيانات إلى أن تتم معالجتها معًا، بغض النظر عما إذا كانت في نفس الصف أم لا، فيجب عليك تحديد نطاق مسمى “_CellsSmartMarkers” وتحديد WorkbookDesigner.LineByLine بأنها خطأ قبل استدعاء المعالجة. الحصول على الإشعارات أثناء دمج البيانات مع علامات ذكاء

|todo:image_alt_text|

الحصول على إشعارات أثناء دمج البيانات باستخدام العلامات الذكية

في بعض الأحيان، قد يكون من الضروري الحصول على إشعارات حول مرجع الخلية أو العلامة الذكية الخاصة التي يتم معالجتها قبل الاكتمال. يمكن تحقيق ذلك باستخدام خاصية WorkbookDesigner.CallBack و ISmartMarkerCallBack

مواضيع متقدمة