Vérifiez que la valeur de la cellule satisfait aux règles de validation des données
Microsoft Excel permet aux utilisateurs d’ajouter des règles de validation des données aux cellules. Par exemple, une validation décimale spécifie que seuls les nombres entre 10 et 20 peuvent être saisis. Si un utilisateur entre un nombre différent, Microsoft Excel affiche un message d’erreur et l’invite à saisir un nombre dans la plage correcte. Si vous copiez-collez un nombre, par exemple 3, dans la cellule, Excel ne vérifie pas la validation ni n’affiche de message d’erreur.
Parfois, il est nécessaire de vérifier si une valeur satisfait les règles de validation des données appliquées à la cellule de manière programmée. Dans le cas ci-dessus, par exemple, l’entrée devrait échouer.
Introduction
Aspose.Cells fournit la méthode Cell.GetValidationValue() pour valider les valeurs des cellules de manière programmatique. Si la valeur dans une cellule ne satisfait pas la règle de validation des données appliquée à cette cellule, elle renvoie Faux, sinon Vrai.
L’exemple de code suivant illustre le fonctionnement de la méthode Cell.GetValidationValue(). Tout d’abord, il entre la valeur 3 dans C1. Comme cela ne satisfait pas la règle de validation des données, la méthode Cell.GetValidationValue() renvoie Faux. Ensuite, il entre la valeur 15 dans C1. Comme cette valeur satisfait la règle de validation des données, la méthode Cell.GetValidationValue() renvoie Vrai. De même, elle renvoie Faux pour la valeur 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()); |
Sortie
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