Supprimer les lignes et les colonnes vides dans Excel à l'aide de Java

Nous pouvons facilement supprimer par programmation les lignes et les colonnes vides des feuilles de calcul Excel. Dans cet article, nous allons apprendre comment supprimer des lignes et des colonnes vides dans Excel à l’aide de Java.

Les sujets suivants seront traités dans cet article:

API Java pour supprimer des lignes et des colonnes vides dans Excel

Pour supprimer les lignes et les colonnes vides des fichiers XLSX, nous utiliserons l’API Aspose.Cells for Java. Veuillez soit télécharger le JAR de l’API ou simplement ajouter la configuration pom.xml suivante dans une application Java basée sur Maven.

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

Supprimer les lignes vides dans Excel à l’aide de Java

Nous pouvons supprimer par programme les lignes vides des feuilles de calcul Excel en suivant les étapes ci-dessous:

  • Tout d’abord, chargez un fichier Excel en utilisant la classe Workbook.
  • Ensuite, appelez la méthode Workbook.getWorksheets() et récupérez les feuilles de calcul dans l’objet WorksheetCollection.
  • Ensuite, accédez à la feuille de calcul contenant les lignes vides soit par son index (basé sur zéro), soit par son nom.
  • Après cela, appelez la méthode Cells.deleteBlankRows() pour supprimer les lignes vides de la feuille de calcul consultée.
  • Enfin, appelez la méthode save() avec le chemin du fichier de sortie pour enregistrer le fichier de sortie.

L’exemple de code suivant montre comment supprimer des lignes vides d’Excel à l’aide de Java.

// Chargez un fichier Excel existant.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obtenez la collection de feuilles de calcul dans la feuille de calcul.
WorksheetCollection sheets = workbook.getWorksheets();

// Obtenez la première feuille de calcul de WorksheetCollection par index.
Worksheet sheet = sheets.get(0);
// Ou par nom.
// Feuille de calcul feuille = feuilles.get("Feuille1");

// Supprimez les lignes vides de la feuille de calcul.
sheet.getCells().deleteBlankRows();

// Enregistrez le fichier Excel mis à jour.
workbook.save("C:\\Files\\Cells\\output.xlsx");
Supprimez les lignes vides dans Excel à l'aide de Java.

Supprimez les lignes vides dans Excel à l’aide de Java.

De même, nous pouvons supprimer les lignes vides de toutes les feuilles de calcul d’un document Excel. Nous allons simplement parcourir WorksheetCollection et appeler la méthode deleteBlankRows() sur chaque feuille de calcul, comme indiqué dans l’exemple de code suivant:

// Ouvrez un fichier Excel existant.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obtenir la collection de feuilles de calcul
WorksheetCollection worksheets = workbook.getWorksheets();

// Itérer sur les feuilles de calcul.
for (int i=0; i<worksheets.getCount(); i++)
{
    // Access worksheets one by one
    Worksheet sheet = worksheets.get(i);
  
    // Delete the Blank Rows from the worksheet.
    sheet.getCells().deleteBlankRows();
}

// Enregistrez le fichier Excel mis à jour.
workbook.save("C:\\Files\\Cells\\output.xlsx");

Supprimer les colonnes vides dans Excel à l’aide de Java

Nous pouvons supprimer les colonnes vides des feuilles de calcul Excel par programmation en suivant les étapes ci-dessous:

  • Tout d’abord, chargez un fichier Excel en utilisant la classe Workbook.
  • Ensuite, appelez la méthode Workbook.getWorksheets() et récupérez les feuilles de calcul dans l’objet WorksheetCollection.
  • Ensuite, accédez à la feuille de calcul qui contient les colonnes vides soit par son index (basé sur zéro), soit par son nom.
  • Après cela, appelez la méthode Cells.deleteBlankColumns() pour supprimer les colonnes vides de la feuille de calcul consultée.
  • Enfin, appelez la méthode save() avec le chemin du fichier de sortie pour enregistrer le fichier de sortie.

L’exemple de code suivant montre comment supprimer des colonnes vides d’Excel à l’aide de Java.

// Ouvrez un fichier Excel existant.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obtenez la collection de feuilles de calcul dans la feuille de calcul.
WorksheetCollection sheets = workbook.getWorksheets();

// Obtenez la première feuille de calcul de WorksheetCollection par index.
Worksheet sheet = sheets.get(2);

// Supprimez les colonnes vides.
sheet.getCells().deleteBlankColumns(options);

// Enregistrez le fichier Excel mis à jour.
workbook.save("C:\\Files\\Cells\\output_DeleteBlankColumns.xlsx");	
Supprimer les colonnes vides dans Excel à l'aide de Java.

Supprimer les colonnes vides dans Excel à l’aide de Java.

Mettre à jour automatiquement les références lors de la suppression de lignes et de colonnes vides

La suppression de lignes ou de colonnes vides peut casser les références dans les formules, les graphiques et les tableaux. Par exemple, la cellule A1 dans Sheet2 a une formule =Sheet1!C7 qui fait référence à la cellule C7 de la première feuille de calcul, comme illustré dans la figure suivante.

Une cellule A1 dans Sheet2 fait référence à une valeur de la cellule C7 dans Sheet1.

Une cellule A1 dans Sheet2 fait référence à une valeur de la cellule C7 dans Sheet1.

If we remove blank rows in Sheet1, the value of C7 (650000) will be moved to cell C6. Mais la formule (= Sheet1! C7) ne sera pas mise à jour et la cellule A1 affichera la valeur de C7 qui sera 550000 dans ce cas. Nous pouvons éviter ce problème en définissant DeleteOptions.setUpdateReference sur true. Il s’assurera que les références sont mises à jour lors de la suppression des lignes vides.

Nous pouvons mettre à jour automatiquement les références tout en supprimant par programme les lignes vides des feuilles de calcul Excel en suivant les étapes ci-dessous:

  • Tout d’abord, chargez un fichier Excel en utilisant la classe Workbook.
  • Ensuite, appelez la méthode Workbook.getWorksheets() et récupérez les feuilles de calcul dans l’objet WorksheetCollection.
  • Ensuite, accédez à la feuille de calcul soit par index (basé sur zéro), soit par nom contenant les lignes vides.
  • Ensuite, créez une instance de la classe DeleteOptions
  • Ensuite, appelez setUpdateReferences() à true. Il mettra à jour les références dans d’autres feuilles tout en supprimant les lignes vides.
  • Après cela, appelez la méthode Cells.deleteBlankRows() avec l’objet DeleteOptions comme argument pour supprimer les lignes vides de la feuille de calcul consultée.
  • Enfin, appelez la méthode save() avec le chemin du fichier de sortie pour enregistrer le fichier de sortie.

L’exemple de code suivant montre comment mettre à jour les références tout en supprimant les lignes vides dans Excel.

// Ouvrez un fichier Excel existant.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obtenez la collection de feuilles de calcul dans la feuille de calcul.
WorksheetCollection sheets = workbook.getWorksheets();

// Obtenez la première feuille de calcul de WorksheetCollection par index.
Worksheet sheet = sheets.get(0);

// Cette option assurera les références (dans les formules, les graphiques)
// sont mis à jour lors de la suppression des lignes vides.
DeleteOptions options = new DeleteOptions();
options.setUpdateReference(true);

// Supprimez les lignes vides de la feuille de calcul.
sheet.getCells().deleteBlankRows(options);

// Enregistrez le fichier Excel mis à jour.
workbook.save("C:\\Files\\Cells\\output_UpdateReferencesAutomatically.xlsx");

De même, nous pouvons mettre à jour les références tout en supprimant les colonnes vides dans Excel. Cependant, nous avons juste besoin d’appeler la méthode deleteBlankColumns() avec DeleteOptions comme argument.

Obtenez une licence gratuite

Veuillez essayer l’API sans limitation d’évaluation en demandant une licence temporaire gratuite.

Conclusion

Dans cet article, nous avons appris comment supprimer des lignes et des colonnes dans Excel à l’aide de Java. Nous avons également vu comment mettre à jour les références tout en supprimant des lignes et des colonnes par programmation. En outre, vous pouvez en savoir plus sur l’API Aspose.Cells for Java en utilisant la documentation. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également