Rechercher ou rechercher des données

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

tâche : image_autre_texte

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

Sujets avancés