验证 Cell 值是否满足数据验证规则

Contents
[ ]

介绍

Aspose.Cells 提供了Cell.GetValidationValue()以编程方式验证单元格值的方法。如果单元格中的值不满足应用于该单元格的数据有效性规则,则返回错误的, 别的真的.

下面的示例代码说明了如何Cell.GetValidationValue()方法有效。首先,它将值 3 输入 C1。因为这不满足数据验证规则,所以Cell.GetValidationValue()方法返回错误的.然后,它将值 15 输入 C1。因为这个值满足数据验证规则,所以Cell.GetValidationValue()方法返回真的.同样,它返回错误的价值 30。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
// Instantiate the workbook from sample Excel file
Workbook workbook = new Workbook(dataDir+ "sample.xlsx");
// Access the first worksheet
Worksheet worksheet = workbook.Worksheets[0];
// Access Cell C1
// Cell C1 has the Decimal Validation applied on it.
// It can take only the values Between 10 and 20
Cell cell = worksheet.Cells["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.WriteLine("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.WriteLine("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.WriteLine("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