Table des matières
Installer avec Maven
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls.free</artifactId>
<version>5.1.0</version>
</dependency>
Liens connexes
La possibilité de lire des données à partir de fichiers Excel peut être utile dans divers secteurs et scénarios où des données structurées doivent être consultées et utilisées. En lisant les données d'Excel, vous pouvez extraire des informations, effectuer des calculs et analyser les données à l'aide de langages de programmation ou d'outils spécialisés. Ce processus permet une manipulation efficace des données et facilite des tâches telles que la génération de rapports, l'exécution d'analyses statistiques et l'automatisation des flux de travail.
Dans cet article, nous allons vous présenter comment lire des fichiers Excel en Java en utilisant E-iceblue Bibliothèque Java Excel gratuite. Les sous-thèmes suivants sont inclus.
- Lire la valeur d'une cellule en Java
- Lire les données d'une plage de cellules en Java
- Lire les données d'une feuille de calcul entière en Java
- Lire la formule dans une cellule en Java
- Lire le résultat de la formule dans une cellule en Java
Bibliothèque Java gratuite pour lire Excel
Free Spire.XLS for Java, fourni par E-iceblue Inc., est une bibliothèque Java petite mais puissante qui permet aux développeurs de créer, lire et modifier sans effort des fichiers Excel XLS et XLSX. Bien qu'il s'agisse d'une édition communautaire de la bibliothèque commerciale Spire.XLS for Java, elle offre presque toutes les capacités de gestion d'Excel, à l'exclusion de la conversion de format de fichier. Les utilisateurs peuvent l'utiliser pour créer facilement un document Excel à partir de zéro ou effectuer des opérations sur des documents existants, comme récupérer des données à partir d'une feuille de calcul.
Pour installer la bibliothèque à partir du référentiel Maven, ajoutez simplement la configuration suivante au fichier pom.xml de votre projet.
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>
Alternativement, vous pouvez télécharger gratuitement Spire.XLS for Java et importez manuellement le fichier jar en tant que dépendance dans votre application Java.
Lire la valeur d'une cellule en Java
Dans Free Spire.XLS, la classe CellRange représente une cellule ou une plage, et la méthode getValue() sous la classe récupère la valeur d'une cellule spécifique, qui peut être du texte, un nombre ou une formule. Suivez les étapes suivantes pour lire la valeur d'une cellule en Java.
- Créez un objet Workbook.
- Chargez un fichier Excel dans l'objet Workbook.
- Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
- Obtenez une plage de cellules spécifique (dans ce cas, la cellule C6) à partir de la feuille de calcul.
- Récupérez la valeur de la cellule à l'aide de la méthode getValue().
- Java
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ReadCellValue {
public static void main(String[] args) {
// Create a Workbook object
Workbook wb = new Workbook();
// Load an Excel file
wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Score Sheet.xlsx");
//Get a specific worksheet
Worksheet sheet = wb.getWorksheets().get(0);
// Get a specific cell
CellRange certainCell = sheet.getCellRange("C6");
// Get the value of the cell
String cellValue = certainCell.getValue();
// Print out result
System.out.println("C6 has the value: " + cellValue);
}
}

Lire les données d'une plage de cellules en Java
Maintenant que nous avons appris comment obtenir la valeur d'une cellule particulière, il est facile d'extraire des données d'une région de cellule en parcourant les cellules une par une. Les étapes pour lire les données d'une plage de cellules spécifique sont les suivantes.
- Créez un objet Workbook.
- Chargez un fichier Excel dans l'objet Workbook.
- Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
- Obtenez une plage de cellules (dans ce cas, A3:F6) à partir de la feuille de calcul.
- Parcourez les cellules de la plage à l’aide de boucles imbriquées.
- Dans chaque itération, obtenez une cellule spécifique dans la plage.
- Récupérez la valeur de la cellule à l'aide de la méthode getValue().
- Répétez le processus pour toutes les cellules de la plage.
- Java
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ReadCellRange {
public static void main(String[] args) {
// Create a Workbook object
Workbook wb = new Workbook();
// Load an Excel file
wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Score Sheet.xlsx");
//Get a specific worksheet
Worksheet sheet = wb.getWorksheets().get(0);
// Get a cell range
CellRange cellRange = sheet.getCellRange("A3:F6");
// Iterate through the cells in the range
for (int i = 0; i < cellRange.getRowCount(); i++) {
for (int j = 0; j < cellRange.getColumnCount(); j++) {
// Get a specific cell
CellRange certainCell = cellRange.get(3 + i, 1 + j);
// Get the value of the cell
String cellValue = certainCell.getValue();
// Print out result
System.out.print(cellValue + " ");
}
System.out.println();
}
}
}

Lire les données d'une feuille de calcul entière en Java
Pour identifier la plage de cellules contenant des données, utilisez la méthode Worksheet.getAllocatedRange(), qui génère un objet CellRange. En parcourant les cellules de la plage, vous pouvez accéder à chaque cellule et à sa valeur correspondante. Voici les étapes pour lire les données d’une feuille de calcul entière en Java.
- Créez un objet Workbook.
- Chargez un fichier Excel existant dans l'objet Workbook.
- Obtenez la première feuille de calcul de l'objet Workbook.
- Utilisez la méthode getAllocatedRange() sur la feuille de calcul pour récupérer la plage de cellules contenant des données.
- Parcourez chaque ligne de la plage localisée à l’aide d’une boucle for.
- Dans chaque itération de ligne, parcourez chaque colonne de la plage localisée en utilisant une autre boucle for.
- Obtenez une cellule spécifique dans la plage localisée à l'aide de la méthode get(), en transmettant les indices de ligne et de colonne.
- Récupérez la valeur de la cellule à l'aide de la méthode getValue().
- Répétez le processus pour toutes les cellules de la plage.
- Java
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ReadWorksheet {
public static void main(String[] args) {
//Create a Workbook object
Workbook wb = new Workbook();
//Load an existing Excel file
wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Score Sheet.xlsx");
//Get the first worksheet
Worksheet sheet = wb.getWorksheets().get(0);
//Get the cell range containing data
CellRange locatedRange = sheet.getAllocatedRange();
//Iterate through the rows
for (int i = 0; i < locatedRange.getRows().length; i++) {
//Iterate through the columns
for (int j = 0; j < locatedRange.getColumnCount(); j++) {
// Get a specific cell
CellRange certainCell = locatedRange.get(i + 1, j + 1);
// Get the value of the cell
String cellValue = certainCell.getValue();
// Print out result
System.out.print(cellValue + " ");
}
System.out.println();
}
}
}

Lire la formule dans une cellule en Java
Si une cellule contient une formule, vous pouvez obtenir la formule en utilisant soit la méthode getValue(), soit la méthode getFormula(). Voici les étapes pour lire la formule d’une cellule en Java.
- Créez un objet Workbook.
- Chargez un fichier Excel dans l'objet Workbook.
- Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
- Obtenez une cellule spécifique (D4 dans ce cas) de la feuille de calcul.
- Vérifiez si la cellule contient une formule en utilisant la méthode hasFormula().
- Si la cellule contient une formule, récupérez la formule à l'aide de la méthode getFormula().
- Java
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ReadFormula {
public static void main(String[] args) {
// Create a Workbook object
Workbook wb = new Workbook();
// Load an Excel file
wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Formula.xlsx");
//Get a specific worksheet
Worksheet sheet = wb.getWorksheets().get(0);
// Get a specific cell
CellRange certainCell = sheet.getCellRange("D4");
// Determine if the cell has formula or not
if (certainCell.hasFormula()){
// Get the formula of the cell
String formula = certainCell.getFormula();
// Print out result
System.out.println("D4 has a formula: " + formula);
}
}
}

Lire le résultat de la formule dans une cellule en Java
Dans de nombreux cas, les utilisateurs sont principalement intéressés par les résultats produits par les formules plutôt que par les formules elles-mêmes. Pour obtenir le résultat d'une formule, utilisez la méthode getFormulaValue() . Voici les étapes pour lire le résultat de la formule dans une cellule en Java.
- Créez un objet Workbook.
- Chargez un fichier Excel dans l'objet Workbook.
- Obtenez une feuille de calcul spécifique à partir de l'objet Workbook.
- Obtenez une cellule spécifique (D4 dans ce cas) de la feuille de calcul.
- Vérifiez si la cellule contient une formule en utilisant la méthode hasFormula().
- Si la cellule contient une formule, récupérez le résultat de la formule à l'aide de la méthode getFormulaValue() et convertissez le résultat en représentation sous forme de chaîne à l'aide de la méthode toString().
- Java
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ReadFormulaResult {
public static void main(String[] args) {
// Create a Workbook object
Workbook wb = new Workbook();
// Load an Excel file
wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\Formula.xlsx");
//Get a specific worksheet
Worksheet sheet = wb.getWorksheets().get(0);
// Get a specific cell
CellRange certainCell = sheet.getCellRange("D4");
// Determine if the cell has formula or not
if (certainCell.hasFormula()){
// Get the result of formula
String formulaResult = certainCell.getFormulaValue().toString();
// Print out result
System.out.println("D4 has a formula and its result is: " + formulaResult);
}
}
}

Conclusion
Dans cet article de blog, nous avons expliqué le processus de récupération de données (texte et nombres) à partir d'une cellule spécifique, d'une plage de cellules désignée ou d'une feuille de calcul Excel entière à l'aide de Free Spire.XLS for Java. Nous avons également expliqué comment déterminer si une cellule contient une formule et exploré des méthodes pour extraire à la fois la formule elle-même et la valeur qui en résulte. En tant que bibliothèque Excel professionnelle, Free Spire.XLS for Java prend en charge les extraction d'images et objets OLE également à partir de documents Excel.
Pour plus de tutoriels, veuillez consulter notre Guide de programmation Excel. Si vous avez des questions, n'hésitez pas à nous contacter via le Forum Spire.XLS.