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

مقدمة

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

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

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

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

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

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

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

& = مصدر البيانات & = [مصدر البيانات]. [اسم الحقل] & = $ VariableName & = $ VariableArray & == الصيغة الديناميكية & = & = RepeatDynamicFormula

حدود

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

  • لا إضافة - لا تقم بإضافة صفوف إضافية لتناسب البيانات.
  • تخطي: - تخطي عدد n من الصفوف لكل صف من البيانات.
  • تصاعدي: أوتنازلي: n - فرز البيانات في علامات ذكية. إذا كان n هو 1 ، فإن العمود هو المفتاح الأول للفرز. يتم فرز البيانات بعد معالجة مصدر البيانات. على سبيل المثال: & = Table1.Field3 (تصاعدي: 1).
  • عرضي - اكتب البيانات من اليسار إلى اليمين ، بدلاً من كتابة البيانات من أعلى إلى أسفل.
  • رقمي - تحويل النص إلى رقم إن أمكن.
  • تحول - التحول لأسفل أو لليمين ، وإنشاء صفوف أو أعمدة إضافية لتناسب البيانات. تعمل معلمة التحول بنفس الطريقة كما في Microsoft Excel. على سبيل المثال في Microsoft Excel ، عند تحديد نطاق من الخلايا ، انقر بزر الماوس الأيمن وحددإدراج وتحديدتحول الخلايا إلى أسفل, خلايا تحول الحق وخيارات أخرى. باختصار ، فإنتحول تملأ المعلمة نفس الوظيفة للعلامات الذكية الرأسية / العادية (من أعلى إلى أسفل) أو الأفقية (من اليسار إلى اليمين).
  • نسخة - انسخ نمط الخلية الأساسية إلى جميع الخلايا في هذا العمود.

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

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

توضح لقطات الشاشة التالية كيفية إدراج البيانات في كل صف آخر.

ملف نموذجي ملف إلاخراج
ما يجب القيام به: image_بديل_نص ما يجب القيام به: image_بديل_نص

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

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

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

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

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

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

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

 "~"

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

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

ملف نموذجي ملف إلاخراج
ما يجب القيام به: image_بديل_نص ما يجب القيام به: image_بديل_نص
Cell يحتوي “C1” على الصيغة**= A1 * B1** تحتوي الخلية “C2” على**= A2 * B2** وتحتوي الخلية “C3” على**= A3 * B3**.

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

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

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

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

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

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

حدود

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

المجموعة: عادي / دمج / كرر

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

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

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

تخطى

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

على سبيل المثال ، & = Employees.EmployeeID (مجموعة: عادي ، تخطي: 1)

المجموع الفرعي

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

يوضح التنسيق في الواقع على النحو التالي: المجموع الفرعي N: المرجع حيث يشير المرجع إلى المجموعة حسب العمود.

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

  • & = Products.Units (الإجمالي الفرعي 9: Products.ProductID) تحدد وظيفة التلخيص عليهاالوحدات المجال فيما يتعلقمعرف المنتج المجال فيمنتجات الطاولة.
  • & = Tabx.Col3 (المجموع الفرعي 9: Tabx.Col1) يحدد دالة التلخيص على ملفCol3 المجموعة الميدانيةالعمود 1 في الطاولةتابكس.
  • & = Table1.ColumnD (المجموع الفرعي 9: Table1.ColumnA & Table1.ColumnB) يحدد وظيفة التلخيص عندالعمود د المجموعة الميدانيةالعمود والعمود ب في الطاولةالجدول 1.

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

يحتوي ملف المصمم على ورقتي عمل. في البداية ، وضعنا علامات ذكية مع معلمات تجميع كما هو موضح في لقطة الشاشة أدناه. يتم وضع ثلاث علامات ذكية (مع معلمات التجميع): & = [تفاصيل الطلب] .OrderID (مجموعة: دمج ، تخطي: 1) ، & = [تفاصيل الطلب]. الكمية (الإجمالي الفرعي 9: تفاصيل الطلب. معرف الطلب) ، و & = [تفاصيل الطلب]. سعر الوحدة (الإجمالي الفرعي 9: تفاصيل الطلب. معرف الطلب) انتقل إلى A5 و B5 و C5 على التوالي.

ورقة العمل الأولى في ملف SmartMarker_Designer.xls ، كاملة بالعلامات الذكية
ما يجب القيام به: image_بديل_نص
في ورقة العمل الثانية من ملف المصمم ، نضع بعض العلامات الذكية كما هو موضح في الشكل أدناه. نضع العلامات الذكية التالية:
& = [تفاصيل الطلب] .OrderID (مجموعة: عادي) ،
& = [تفاصيل الطلب]. الكمية ،
& = [تفاصيل الطلب] .UnitPrice،
& = & = B (r) * C (r) و
& = المجموع الفرعي 9: تفاصيل الطلب. معرف الطلب في A5 و B5 و C5 و D5 و C6 على التوالي.
ورقة العمل الثانية من ملف SmartMarker_Designer.xls ، تعرض علامات ذكية مختلطة.
ما يجب القيام به: image_بديل_نص
هنا هو كود المصدر المستخدم في المثال.

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

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

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

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

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

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

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

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

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

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

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

تعرض ورقة العمل الأولى لملف SM_NestedObjects.xlsx العلامات الذكية المتداخلة.
ما يجب القيام به: image_بديل_نص
المثال التالي يوضح كيف يعمل هذا.

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

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

ما يجب القيام به: image_بديل_نص

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

يوضح نموذج التعليمات البرمجية التالي استخدام خاصية HTML للعلامات الذكية. عند معالجتها ، ستظهر “World” في “Hello World” بالخط العريض بسبب HTML بطاقة شعار.

لا سطرا بسطر

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

|ما يجب القيام به: image_بديل_نص|

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

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

موضوعات مسبقة