التحقق من أن قيمة الخلية تفي بقواعد التحقق من البيانات
يسمح Microsoft Excel للمستخدمين بإضافة قواعد التحقق من البيانات إلى الخلايا. على سبيل المثال، تحدد التحقق العشري أن يتم إدخال أرقام بين 10 و20 فقط. إذا أدخل المستخدم رقمًا مختلفًا، يظهر Excel رسالة خطأ ويطالب بإدخال رقم في النطاق الصحيح. إذا نسخ ولصق رقم، مثل 3، في الخلية، فإن Excel لا يجري فحص تحقق أو يعرض رسالة خطأ.
في بعض الأحيان، يكون من الضروري التحقق مما إذا كانت القيمة تلبي قواعد التحقق من البيانات المطبقة على الخلية بشكل برمجي. في المثال أعلاه، على سبيل المثال، يجب أن يفشل الإدخال.
مقدمة
توفر Aspose.Cells for Node.js via C++ طريقة Cell.getValidationValue() للتحقق من صحة قيم الخلايا برمجياً. إذا كانت قيمة في خلية لا تفي بقواعد التحقق من البيانات المطبقة على تلك الخلية، فإنه يُرجع false، وإلا يُرجع true.
يوضح كود العينة التالي كيف تعمل طريقة Cell.getValidationValue(). أولاً، يدخل القيمة 3 في C1. نظرًا لأنها لا تفي بقواعد التحقق من البيانات، فإن طريقة Cell.getValidationValue() تُرجع false. ثم، يُدخل القيمة 15 في C1. نظرًا لأنها تفي بقواعد التحقق من البيانات، فإن الطريقة تُرجع true. بالمثل، تُرجع false للقيمة 30.
const path = require("path"); | |
const AsposeCells = require("aspose.cells.node"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
// Instantiate the workbook from sample Excel file | |
const workbook = new AsposeCells.Workbook(dataDir + "sample.xlsx"); | |
// Access the first worksheet | |
const worksheet = workbook.getWorksheets().get(0); | |
// Access Cell C1 | |
// Cell C1 has the Decimal Validation applied on it. | |
// It can take only the values Between 10 and 20 | |
const cell = worksheet.getCells().get("C1"); | |
// Enter 3 inside this cell | |
// Since it is not between 10 and 20, it should fail the validation | |
cell.putValue(3); | |
// Check if number 3 satisfies the Data Validation rule applied on this cell | |
console.log("Is 3 a Valid Value for this Cell: " + cell.getValidationValue()); | |
// Enter 15 inside this cell | |
// Since it is between 10 and 20, it should succeed the validation | |
cell.putValue(15); | |
// Check if number 15 satisfies the Data Validation rule applied on this cell | |
console.log("Is 15 a Valid Value for this Cell: " + cell.getValidationValue()); | |
// Enter 30 inside this cell | |
// Since it is not between 10 and 20, it should fail the validation again | |
cell.putValue(30); | |
// Check if number 30 satisfies the Data Validation rule applied on this cell | |
console.log("Is 30 a Valid Value for this Cell: " + cell.getValidationValue()); |
الناتج
Is 3 a Valid Value for this Cell: false
Is 15 a Valid Value for this Cell: true
Is 30 a Valid Value for this Cell: false