Verifiera att Cell-värdet uppfyller reglerna för datavalidering
Microsoft Excel tillåter användare att lägga till datavalideringsregler i celler. Till exempel anger en decimalvalidering att endast siffror mellan 10 och 20 kan anges. Om en användare anger ett annat nummer. Microsoft Excel visar ett felmeddelande och uppmanar dem att ange ett nummer i rätt intervall. Om du kopierar och klistrar in ett nummer, säg 3, i cellen, kör Excel inte en valideringskontroll eller visar ett felmeddelande.
Ibland är det nödvändigt att verifiera om ett värde uppfyller datavalideringsreglerna som tillämpas på cellen programmatiskt. I fallet ovan bör till exempel posten misslyckas.
Introduktion
Aspose.Cells tillhandahållerCell.GetValidationValue() metod för att validera cellvärden programmatiskt. Om värdet i en cell inte uppfyller datavalideringsregeln som tillämpas på den cellen, returneras detFalsk , annatSann.
Följande exempelkod illustrerar hurCell.GetValidationValue() metoden 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.
// 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()); |
Produktion
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