Rechercher ou rechercher des données
Dans Microsoft Excel, les utilisateurs peuvent rechercher des cellules contenant des données spécifiques. Par exemple, en cliquantÉditer et puisTrouver ouvre la boîte de dialogue Rechercher. Les utilisateurs entrent une valeur et cliquentD’ACCORD pour le chercher. Excel met en évidence les champs correspondants.
Utilisation de la boîte de dialogue Rechercher pour rechercher des cellules contenant une valeur spécifique
Dans cet exemple, la valeur de recherche est “Oranges”.
Aspose.Cells permet aux développeurs de rechercher dans les cellules d’une feuille de calcul pour trouver celles qui contiennent une valeur donnée.
Recherche de Cells contenant des données spécifiques
Aspose.Cells fournit une classe,Cahier , qui représente un fichier Excel. LeCahier la classe contientWorksheetCollection , une collection qui permet d’accéder à chacune des feuilles de calcul du fichier Excel. Une feuille de calcul est représentée par leFeuille de travailclasse.
LeFeuille de travail la classe fournitCells , une collection qui représente toutes les cellules de la feuille de calcul.Cellscollection fournit plusieurs méthodes pour rechercher des cellules dans une feuille de calcul contenant des données spécifiées par l’utilisateur. Quelques-unes de ces méthodes sont décrites ci-dessous plus en détail.
Toutes les méthodes de recherche renvoient les références de cellule pour toutes les cellules contenant la valeur de recherche spécifiée.
Recherche contenant une formule
Les développeurs peuvent trouver une formule spécifiée dans la feuille de calcul en appelant leCells de la collectiontrouver, en définissant laFindOptions.setLookInType àLookInType.FORMULASet en le passant comme paramètre autrouver méthode.
Typiquement, letrouver accepte deux paramètres ou plus :
- Objet à rechercher : représente un objet à rechercher dans la feuille de calcul.
- Le précédent Cell : représente la cellule précédente avec la même formule. Ce paramètre peut être défini sur null lors de la recherche depuis le début.
- Options de recherche : représente les critères de recherche. Dans les exemples ci-dessous, les données de feuille de calcul suivantes sont utilisées pour pratiquer les méthodes de recherche :
Exemple de données de feuille de calcul
// 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.getSharedDataDir(FindingCellsContainingFormula.class) + "data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Finding the cell containing the specified formula | |
Cells cells = worksheet.getCells(); | |
FindOptions findOptions = new FindOptions(); | |
findOptions.setLookInType(LookInType.FORMULAS); | |
Cell cell = cells.find("=SUM(A5:A10)", null, findOptions); | |
// Printing the name of the cell found after searching worksheet | |
System.out.println("Name of the cell containing formula: " + cell.getName()); |
Recherche de chaînes
La recherche de cellules contenant une valeur de chaîne est simple et flexible. Il existe différentes manières de rechercher, par exemple, rechercher des cellules contenant des chaînes commençant par un caractère particulier ou un ensemble de caractères.
Recherche de chaînes commençant par des caractères spécifiques
Pour rechercher le premier caractère d’une chaîne, appelez leCells de la collectiontrouver, définissez la méthodeFindOptions.setLookAtType àLookAtType.START_WITHet le passer en paramètre autrouver méthode.
// 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.getSharedDataDir(FindingCellsWithStringOrNumber.class) + "data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Finding the cell containing the specified formula | |
Cells cells = worksheet.getCells(); | |
// Instantiate FindOptions | |
FindOptions findOptions = new FindOptions(); | |
// Finding the cell containing a string value that starts with "Or" | |
findOptions.setLookAtType(LookAtType.START_WITH); | |
Cell cell = cells.find("SH", null, findOptions); | |
// Printing the name of the cell found after searching worksheet | |
System.out.println("Name of the cell containing String: " + cell.getName()); |
Recherche de chaînes se terminant par des caractères spécifiques
Aspose.Cells peut également trouver des chaînes qui se terminent par des caractères spécifiques. Pour rechercher les derniers caractères d’une chaîne, appelez leCells de la collectiontrouver, définissez la méthodeFindOptions.setLookAtType àLookAtType.END_WITHet le passer en paramètre autrouver méthode.
// 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.getSharedDataDir(FindingCellsEndWithSpecificCharacters.class) + "data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Finding the cell containing the specified formula | |
Cells cells = worksheet.getCells(); | |
// Instantiate FindOptions | |
FindOptions findOptions = new FindOptions(); | |
// Finding the cell containing a string value that ends with "es" | |
findOptions.setLookAtType(LookAtType.END_WITH); | |
Cell cell = cells.find("SH", null, findOptions); | |
// Printing the name of the cell found after searching worksheet | |
System.out.println("Name of the cell containing String: " + cell.getName()); |
Recherche avec des expressions régulières : la fonctionnalité RegEx
Une expression régulière fournit un moyen concis et flexible de faire correspondre (spécifier et reconnaître) des chaînes de texte, telles que des caractères, des mots ou des modèles particuliers.
Par exemple, le modèle d’expression régulière abc-* ~~xyz~~ correspond aux chaînes “abc-123-xyz”, “abc-985-xyz” et “abc-pony-xyz”.* est un caractère générique afin que le modèle corresponde à toutes les chaînes commençant par “abc” et se terminant par “-xyz”, quels que soient les caractères au milieu.
Aspose.Cells vous permet de rechercher avec des expressions régulières.
// 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.getSharedDataDir(FindingwithRegularExpressions.class) + "data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Finding the cell containing the specified formula | |
Cells cells = worksheet.getCells(); | |
// Instantiate FindOptions | |
FindOptions findOptions = new FindOptions(); | |
// Instantiate FindOptions | |
FindOptions opt = new FindOptions(); | |
// Set the search key of find() method as standard RegEx | |
opt.setRegexKey(true); | |
opt.setLookAtType(LookAtType.ENTIRE_CONTENT); | |
cells.find("abc[\\s]*$", null, opt); |