Verifiera att Cell-värdet uppfyller reglerna för datavalidering

Verifiera att Cell-värdet uppfyller reglerna för datavalidering

Ibland är det nödvändigt att dynamiskt verifiera om ett givet värde uppfyller de datavalideringsregler som tillämpas på cellen. För detta ändamål tillhandahåller API:erna Aspose.Cellscell.getValidationValue metod. Om värdet i en cell inte uppfyller datavalideringsregeln som tillämpas på den cellen, returneras detFalsk , annatSann.

Följande exempel Microsoft Excel-fil används med exempelkoden nedan för att testacell.getValidationValue metod. Som du kan se i ögonblicksbilden att cellernaC1 hardecimaldatavalidering tillämpas och accepterar endast värdenmellan 10 och 20 . När cellens värde är mellan 10 och 20,cell.getValidationValue kommer att returneraSann , annars kommer den tillbakaFalsk.

todo:image_alt_text

Följande exempelkod illustrerar hurcell.getValidationValue metod fungerar. Först anger den värdet 3 i C1. Eftersom detta inte uppfyller regeln för datavalidering,cell.getValidationValue metod returnerarFalsk . Sedan anger den värdet 15 i C1. Eftersom detta värde uppfyller datavalideringsregeln,cell.getValidationValue metod returnerarSann . På samma sätt återkommer denFalsk för värde 30.

Java-kod för att verifiera om ett Cell-värde uppfyller reglerna för datavalidering

// 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());

Konsolutdata genererad av exempelkoden

Här är konsolutgången som genereras när exempelkoden exekveras med exemplet på Excel-filen som visas ovan.

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