التحقق من البيانات

أنواع التحقق من البيانات والتنفيذ

التحقق من البيانات هو القدرة على وضع قواعد تتعلق بالبيانات المُدخلة على ورقة العمل. على سبيل المثال، استخدم التحقق لضمان أن العمود المسمى تاريخ يحتوي فقط على تواريخ، أو أن عمودًا آخر يحتوي فقط على أرقام. يمكنك حتى التأكد من أن العمود المسمى تاريخ يحتوي فقط على تواريخ ضمن نطاق معين. باستخدام التحقق من البيانات، يمكنك التحكم في ما يُدخل في الخلايا في ورقة العمل.

يدعم Microsoft Excel عددًا من أنواع التحقق المختلفة للبيانات. يُستخدم كل نوع للتحكم في نوع البيانات التي تُدخل إلى خلية أو نطاق الخلايا. أدناه، مقتطفات الكود توضح كيفية التحقق من:

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

التحقق من البيانات مع Microsoft Excel

لإنشاء التحققات باستخدام Microsoft Excel:

  1. في ورقة العمل، حدد الخلايا التي ترغب في تطبيق التحقق عليها.
  2. من قائمة البيانات، حدد التحقق. سيتم عرض حوار التحقق.
  3. انقر على علامة التبويب الإعدادات ثم أدخل الإعدادات.

التحقق من صحة البيانات مع Aspose.Cells for Node.js via C++

التحقق من البيانات هو ميزة قوية للتحقق من المعلومات المُدخلة في أوراق العمل. باستخدام التحقق من البيانات، يمكن للمطورين توفير للمستخدمين قائمة من الخيارات، وتقييد إدخالات البيانات إلى نوع معين أو حجم، الخ.
في Aspose.Cells for Node.js via C++، تحتوي كل صنف Worksheet على طريقة getValidations() والتي تمثل مجموعة من كائنات Validation. لإعداد التحقق، قم بضبط بعض خصائص صنف Validation على النحو التالي:

  • النوع - يمثل نوع التحقق، والذي قد يتم تحديده باستخدام أحد القيم المعرفة مسبقًا في تعداد ValidationType.
  • المشغل - يمثل العامل المستخدم في التحقق، والذي قد يتم تحديده باستخدام أحد القيم المعرفة مسبقًا في تعداد OperatorType.
  • الصيغة1 - يمثل القيمة أو التعبير المرتبط بالجزء الأول من التحقق من البيانات.
  • الصيغة2 - يمثل القيمة أو التعبير المرتبط بالجزء الثاني من التحقق من البيانات.

عند تكوين خصائص كائن Validation، يمكن للمطورين استخدام بنية CellArea لتخزين معلومات حول نطاق الخلية الذي سيتم التحقق منه باستخدام التحقق الذي تم إنشاؤه.

أنواع التحقق من البيانات

يحتوي تعداد ValidationType على الأعضاء التالية:

اسم العضو الوصف
AnyValue يُشير إلى قيمة من أي نوع.
WholeNumber تشير إلى نوع التحقق من صحة للأرقام الكاملة.
Decimal تشير إلى نوع التحقق من صحة للأرقام العشرية.
List تشير إلى نوع التحقق من صحة لقائمة السقط.
Date تشير إلى نوع التحقق من صحة للتواريخ.
Time تشير إلى نوع التحقق من صحة للوقت.
TextLength تشير إلى نوع التحقق من صحة لطول النص.
Custom تشير إلى نوع التحقق من العرف.
تحقق البيانات من الأعداد الصحيحة

مع هذا النوع من التحقق، يمكن للمستخدمين إدخال أعداد صحيحة فقط ضمن نطاق معين في الخلايا التي تم التحقق منها. تظهر أمثلة التعليمات البرمجية التالية كيفبة تنفيذ نوع التحقق من الأعداد الكاملة. ينشئ المثال التحقق من صحة البيانات نفسه باستخدام Aspose.Cells for Node.js via C++ الذي أنشأناه باستخدام Microsoft Excel أعلاه.

تحقق البيانات من القائمة

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

من المهم هنا أن تقوم بضبط خاصية Validation.setInCellDropDown(boolean) على true.

تحقق البيانات من التاريخ

مع هذا النوع من التحقق، يقوم المستخدمون بإدخال قيم تاريخية ضمن النطاق المحدد، أو تلبية معايير محددة، داخل الخلايا المحققة. في المثال، يتم تقييد المستخدم لإدخال تواريخ بين 1970 و1999. هنا، منطقة التحقق هي خلية B1.

تحقق المواقيت الزمنية للبيانات

مع هذا النوع من التحقق، يمكن للمستخدمين إدخال أوقات ضمن نطاق محدد، أو تلبية بعض المعايير، في الخلايا الموجودة. ففي المثال، يتم تقييد المستخدم بإدخال الأوقات بين الساعة 09:00 و11:30 صباحًا. هنا، مجال التحقق هو خلية B1.

تحقق طول النصوص للبيانات

مع هذا النوع من التحقق، يمكن للمستخدمين إدخال قيم نصية من طول محدد في الخلايا الموجودة. في المثال، يتم تقييد المستخدم بإدخال قيم سلسلة نصية بأكثر من 5 أحرف. مجال التحقق هو الخلية B1.

قواعد تحقق البيانات

عند تنفيذ عمليات التحقق من الصحة، يمكن فحص صحة التحقق من خلال تعيين قيم مختلفة في الخلايا. يمكن استخدام Cell.getValidationValue() لاسترداد نتيجة التحقق. يوضح المثال التالي هذه الميزة مع قيم مختلفة. يمكن تنزيل الملف النموذجي للاختبار من الرابط التالي:

sampleDataValidationRules.xlsx

التحقق مما إذا كان التحقق في الخلية القائمة المنسدلة

كما رأينا، هناك العديد من أنواع التحققات التي يمكن تنفيذها داخل خلية. إذا أردت التحقق مما إذا كانت التحقق من الصحة قائمة منسدلة أم لا، يمكن استخدام طريقة Validation.getInCellDropDown() لاختبار ذلك. توضح الشفرة النموذجية التالية استخدام هذه الخاصية. يمكن تنزيل ملف اختبار من الرابط التالي:

sampleValidation.xlsx

إضافة منطقة الخلية إلى التحقق القائم

قد تكون هناك حالات ترغب فيها في إضافة CellArea إلى Validation الموجودة. عند إضافة CellArea باستخدام Validation.addArea(CellArea)، يتحقق Aspose.Cells من جميع المناطق الموجودة مسبقًا لمعرفة ما إذا كانت المنطقة الجديدة موجودة بالفعل. إذا كانت هناك العديد من التحققات في الملف، فإن ذلك يؤثر على الأداء. لتجاوز ذلك، توفر الواجهة البرمجية طريقة Validation.addArea(CellArea, boolean, boolean). يشير المعامل checkIntersection إلى ما إذا كان يتم التحقق من تقاطع المنطقة المعطاة مع مناطق التحقق الموجودة. ضبطه على false سيؤدي إلى تعطيل التحقق من المناطق الأخرى. المعامل checkEdge يشير إلى ما إذا كان سيتم التحقق من المناطق المطبقة. إذا أصبحت المنطقة الجديدة المنطقة العليا اليسرى، يتم إعادة بناء الإعدادات الداخلية. إذا كنت متأكدًا من أن المنطقة الجديدة ليست المنطقة العليا اليسرى، يمكنك ضبط هذا المعامل على false.

يوضح مقتطف الكود التالي استخدام طريقة Validation.addArea(CellArea, boolean, boolean) لإضافة CellArea جديد إلى Validation موجودة.

الملفات الإكسل المصدر والناتج مرفقة للرجوع إليها.

ملف المصدر

ملف الإخراج

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