Cerca dati in Excel usando Java

I fogli di calcolo Excel consentono di archiviare un’enorme quantità di dati in forma tabellare. In alcuni casi, potrebbe essere necessario cercare celle contenenti valori di dati specifici o stringhe dai dati archiviati. Sebbene Excel fornisca funzionalità integrate per eseguire ricerche in tutti i fogli di calcolo, potrebbe essere necessario eseguire l’operazione di ricerca a livello di codice nelle applicazioni Java. In questo articolo impareremo come cercare dati in Excel usando Java.

In questo articolo verranno trattati i seguenti argomenti:

API Java per la ricerca di dati in Excel

Utilizzeremo l’API Aspose.Cells for Java per eseguire l’operazione di ricerca sul file XLSX. Consente di eseguire le funzionalità di automazione di Excel a livello di codice senza la necessità di un’applicazione Microsoft Excel. Si prega di scaricare il JAR dell’API o semplicemente aggiungere la seguente configurazione pom.xml in un’applicazione Java basata su Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>22.1</version>
</dependency>

Trova testo specifico in Excel usando Java

Possiamo cercare qualsiasi testo, numero o valore di data in un file Excel seguendo i passaggi indicati di seguito:

  • Innanzitutto, carica un file Excel utilizzando la classe Cartella di lavoro.
  • Successivamente, accedendo al primo foglio di lavoro nel file Excel.
  • Quindi, ottieni celle del foglio a cui si accede.
  • Quindi, crea un’istanza della classe FindOptions.
  • Successivamente, imposta LookAtType come “INTEROCONTENT”.
  • Infine, trova il testo usando il metodo Cells.find(). Prende, stringa di ricerca e FindOptions come argomenti.

L’esempio di codice seguente mostra come trovare un testo specifico in un file Excel utilizzando Java.

// Carica un file Excel
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample.xlsx");

// Accedi al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.getWorksheets().get(0);

// Ottieni tutte le celle in CellCollections
Cells cells = worksheet.getCells();

// Inizializza FindOptions
FindOptions findOptions = new FindOptions();

// Trova la cella contenente un valore stringa
findOptions.setLookAtType(LookAtType.ENTIRE_CONTENT);
Cell cell = cells.find("A Company", null, findOptions);

// Mostra il nome della cella e il suo valore
System.out.println("Name of the cell containing String: " + cell.getName());
System.out.println("the cell value is: " + cell.getValue());
Trova testo specifico in Excel usando Java

Trova testo specifico in Excel usando Java.

Trova testo che inizia con lettere specifiche

Possiamo cercare qualsiasi valore di testo che inizi con lettere specifiche seguendo i passaggi sopra menzionati. Tuttavia, dobbiamo solo impostare LookAtType come “STARTWITH”.

L’esempio di codice seguente mostra come trovare un testo specifico che inizia con la lettera “H” in un file Excel utilizzando Java.

// Carica un file Excel
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample.xlsx");

// Accedi al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.getWorksheets().get(0);

// Ottieni tutte le celle in CellCollections
Cells cells = worksheet.getCells();

// Inizializza FindOptions
FindOptions findOptions = new FindOptions();

// Trova la cella contenente un valore stringa
findOptions.setLookAtType(LookAtType.START_WITH);
Cell cell = cells.find("H", null, findOptions);

// Mostra il nome della cella e il suo valore
System.out.println("Name of the cell containing String: " + cell.getName());
System.out.println("the cell value is: " + cell.getValue());

Cerca testo che termina con lettere specifiche

Possiamo cercare qualsiasi valore di testo che termini con lettere specifiche seguendo i passaggi sopra menzionati. Tuttavia, dobbiamo solo impostare LookAtType come “ENDWITH”.

L’esempio di codice seguente mostra come trovare un testo specifico che termina con le lettere “any” in un file Excel utilizzando Java.

// Carica un file Excel
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample.xlsx");

// Accedi al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.getWorksheets().get(0);

// Ottieni tutte le celle in CellCollections
Cells cells = worksheet.getCells();

// Inizializza FindOptions
FindOptions findOptions = new FindOptions();

// Trova la cella contenente un valore stringa
findOptions.setLookAtType(LookAtType.ENDS_WITH);
Cell cell = cells.find("any", null, findOptions);

// Mostra il nome della cella e il suo valore
System.out.println("Name of the cell containing String: " + cell.getName());
System.out.println("the cell value is: " + cell.getValue());

Trova testo contenente lettere specifiche

Possiamo cercare qualsiasi valore di testo che contenga qualsiasi sottostringa specifica seguendo i passaggi sopra menzionati. Tuttavia, dobbiamo solo impostare LookAtType come “CONTAINS”.

L’esempio di codice seguente mostra come trovare un testo che contiene “comp” in un file Excel utilizzando Java.

// Carica un file Excel
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample.xlsx");

// Accedi al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.getWorksheets().get(0);

// Ottieni tutte le celle in CellCollections
Cells cells = worksheet.getCells();

// Inizializza FindOptions
FindOptions findOptions = new FindOptions();

// Trova la cella contenente un valore stringa
findOptions.setLookAtType(LookAtType.CONTAINS);
Cell cell = cells.find("comp", null, findOptions);

// Mostra il nome della cella e il suo valore
System.out.println("Name of the cell containing String: " + cell.getName());
System.out.println("the cell value is: " + cell.getValue());

Cerca con l’espressione regolare in Excel usando Java

Possiamo anche cercare un valore di cella usando espressioni regolari seguendo i passaggi sopra menzionati. Tuttavia, dobbiamo solo impostare la chiave Regex su true e LookAtType su “CONTAINS”.

L’esempio di codice seguente mostra come trovare del testo usando un’espressione regolare in un file Excel usando Java.

// Carica un file Excel
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample.xlsx");

// Accedi al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.getWorksheets().get(0);

// Ottieni tutte le celle in CellCollections
Cells cells = worksheet.getCells();

// Inizializza FindOptions
FindOptions findOptions = new FindOptions();

// Definiscilo come Regex
findOptions.setRegexKey(true);
findOptions.setLookAtType(LookAtType.ENTIRE_CONTENT);
findOptions.setLookInType(LookInType.VALUES);
Cell cell = cells.find("[a-z]{1}[\\s]&[\\s][a-z]{1}", null, opt);

// Mostra il nome della cella e il suo valore
System.out.println("Name of the cell containing String: " + cell.getName());
System.out.println("the cell value is: " + cell.getValue());
Cerca con l'espressione regolare in Excel usando Java

Cerca con l’espressione regolare in Excel usando Java.

Ricerca con distinzione tra maiuscole e minuscole in Excel utilizzando Java

Possiamo eseguire un’operazione di ricerca e trovare qualsiasi stringa di testo con distinzione tra maiuscole e minuscole seguendo i passaggi sopra menzionati. Tuttavia, dobbiamo solo impostare la proprietà CaseSensitive su true.

L’esempio di codice seguente mostra come trovare un testo con distinzione tra maiuscole e minuscole in un file Excel utilizzando Java.

// Carica un file Excel
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample.xlsx");

// Accedi al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.getWorksheets().get(0);

// Ottieni tutte le celle in CellCollections
Cells cells = worksheet.getCells();

// Inizializza FindOptions
FindOptions findOptions = new FindOptions();

// Trova la cella contenente una formula
findOptions.setCaseSensitive(true);
findOptions.setLookAtType(LookAtType.CONTAINS);
Cell cell = cells.find("Ltd", null, findOptions);

// Mostra il nome della cella e il suo valore
System.out.println("Name of the cell containing String: " + cell.getName());
System.out.println("the cell value is: " + cell.getValue());

Cerca formula in Excel usando Java

Possiamo cercare una cella contenente una formula in un file Excel seguendo i passaggi indicati di seguito:

  • Innanzitutto, carica un file Excel utilizzando la classe Cartella di lavoro.
  • Successivamente, accedendo al primo foglio di lavoro nel file Excel.
  • Quindi, ottieni le celle del foglio a cui si accede.
  • Quindi, crea un’istanza della classe FindOptions.
  • Successivamente, imposta LookInType come “FORMULE”.
  • Infine, trova il testo usando il metodo Cells.find(). Prende, stringa di ricerca e FindOptions come argomenti.

L’esempio di codice seguente mostra come trovare una cella di formula in un file Excel utilizzando Java.

// Carica un file Excel
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample.xlsx");

// Accedi al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.getWorksheets().get(0);

// Ottieni tutte le celle in CellCollections
Cells cells = worksheet.getCells();

// Inizializza FindOptions
FindOptions findOptions = new FindOptions();

// Trova la cella contenente una formula
findOptions.setLookInType(LookInType.FORMULAS);
Cell cell = cells.find("=SUM(C2:C10)", null, findOptions);

// Mostra il nome della cella e il suo valore
System.out.println("Name of the cell containing String: " + cell.getName());
System.out.println("the cell value is: " + cell.getValue());
Cerca formula in Excel usando Java.

Cerca formula in Excel usando Java.

Ottieni una licenza gratuita

Prova l’API senza limitazioni di valutazione richiedendo una licenza temporanea gratuita.

Conclusione

In questo articolo abbiamo imparato come trovare testo o formule in Excel usando Java. In particolare, abbiamo imparato come cercare qualsiasi testo in Excel che inizia, finisce o contiene lettere specifiche a livello di codice. Abbiamo anche visto come eseguire ricerche utilizzando le espressioni regolari nei file Excel. Inoltre, puoi saperne di più su Aspose.Cells per l’API Java utilizzando la documentazione. In caso di ambiguità, non esitare a contattarci sul forum.

Guarda anche