Verifique que el valor Cell cumpla con las reglas de validación de datos
Verifique que el valor Cell cumpla con las reglas de validación de datos
A veces, es necesario verificar dinámicamente si un valor dado satisface las reglas de validación de datos aplicadas a la celda. Para ello, las API Aspose.Cells proporcionan lacelda.getValidationValue método. Si el valor en una celda no cumple con la regla de validación de datos aplicada a esa celda, devuelveFalso , másVerdadero.
El siguiente archivo Excel de ejemplo Microsoft se usa con el código de ejemplo a continuación para probar elcelda.getValidationValue método. Como puede ver en la instantánea que las celdasC1 poseevalidación de datos decimales aplicado y sólo aceptará valoresentre 10 y 20 . Siempre que el valor de la celda esté entre 10 y 20,celda.getValidationValue el método devolveráVerdadero , de lo contrario, volveráFalso.
El siguiente código de ejemplo ilustra cómo elcelda.getValidationValue método funciona. Primero, ingresa el valor 3 en C1. Debido a que esto no satisface la regla de validación de datos, elcelda.getValidationValue el método devuelveFalso . Luego, ingresa el valor 15 en C1. Debido a que este valor satisface la regla de validación de datos, elcelda.getValidationValue el método devuelveVerdadero . Del mismo modo, vuelveFalso por valor 30.
Java código para verificar si un valor Cell cumple con las reglas de validación de datos
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(VerifyCellValueSatisfiesDataValidationRules.class); | |
// Instantiate the workbook from sample Excel file | |
Workbook workbook = new Workbook(dataDir + "Sample1.xlsx"); | |
// Access the first worksheet | |
Worksheet 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 | |
*/ | |
Cell 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 | |
System.out.println("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 | |
System.out.println("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 | |
System.out.println("Is 30 a Valid Value for this Cell: " + cell.getValidationValue()); | |
Salida de la consola generada por el código de muestra
Esta es la salida de la consola generada cuando el código de muestra se ejecuta con el archivo de muestra de Excel que se muestra arriba.
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