Ajuster automatiquement les lignes et les colonnes

Ajustement automatique

Aspose.Cells fournit une classe, Workbook, qui représente un fichier Microsoft Excel. La classe Workbook contient une collection Worksheets qui permet d’accéder à chaque feuille de calcul dans le fichier Excel.

Une feuille de calcul est représentée par la classe Worksheet. La classe Worksheet propose un large éventail de propriétés et de méthodes pour gérer une feuille de calcul. Cet article explique comment utiliser la classe Worksheet pour ajuster automatiquement les lignes ou les colonnes.

Ajuster automatiquement la ligne - Simple

L’approche la plus simple pour ajuster automatiquement la largeur et la hauteur d’une ligne consiste à appeler la méthode autoFitRow de la classe Worksheet. La méthode autoFitRow prend en paramètre un indice de ligne (de la ligne à redimensionner).

// 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(AutoFitRowsandColumns.class) + "rows_cloumns/";
// 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);
// Auto-fitting the 2nd row of the worksheet
worksheet.autoFitRow(1);
// Auto-fitting the 1st column of the worksheet
worksheet.autoFitColumn(0);
// Saving the modified Excel file in default (that is Excel 2003) format
workbook.save(dataDir + "AutoFitRowsandColumns_out.xls");
// Print message
System.out.println("Row and Column auto fit successfully.");

Ajuster automatiquement la ligne dans une plage de cellules

Une ligne est composée de plusieurs colonnes. Aspose.Cells permet aux développeurs d’ajuster automatiquement une ligne en fonction du contenu dans une plage de cellules de la ligne en appelant une version surchargée de la méthode autoFitRow. Elle prend les paramètres suivants :

  • Index de la ligne, l’index de la ligne à ajuster automatiquement.
  • Index de la première colonne, l’index de la première colonne de la ligne.
  • Index de la dernière colonne, l’index de la dernière colonne de la ligne.

La méthode autoFitRow vérifie le contenu de toutes les colonnes de la ligne puis ajuste automatiquement la hauteur de la ligne.

// 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(AutoFitRowsinaRangeofCells.class) + "rows_cloumns/";
// 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);
// Auto-fitting the row of the worksheet
worksheet.autoFitRow(1, 0, 5);
// Saving the modified Excel file in default (that is Excel 2003) format
workbook.save(dataDir + "AutoFitRowsinaRangeofCells_out.xls");
// Print message
System.out.println("Row auto fit successfully.");

Ajuster automatiquement la colonne - Simple

La façon la plus simple d’ajuster automatiquement la largeur et la hauteur d’une colonne consiste à appeler la méthode autoFitColumn. La méthode autoFitColumn prend en paramètre l’indice de la colonne (de la colonne à redimensionner).

// 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(AutoFitRowsandColumns.class) + "rows_cloumns/";
// 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);
// Auto-fitting the 2nd row of the worksheet
worksheet.autoFitRow(1);
// Auto-fitting the 1st column of the worksheet
worksheet.autoFitColumn(0);
// Saving the modified Excel file in default (that is Excel 2003) format
workbook.save(dataDir + "AutoFitRowsandColumns_out.xls");
// Print message
System.out.println("Row and Column auto fit successfully.");

Ajuster automatiquement la colonne dans une plage de cellules

Une colonne est composée de plusieurs lignes. Il est possible d’ajuster automatiquement une colonne en fonction du contenu dans une plage de cellules de la colonne en appelant une version surchargée de la méthode autoFitColumn, qui prend les paramètres suivants :

  • Index de colonne, représente l’index de la colonne dont le contenu doit être ajusté automatiquement
  • Index de la première ligne, représente l’index de la première ligne de la colonne
  • Dernier index de ligne, représente l’index de la dernière ligne de la colonne

La méthode autoFitColumn vérifie le contenu de toutes les lignes de la colonne puis ajuste automatiquement la largeur de la colonne.

// 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(AutoFitColumnsinaRangeofCells.class) + "rows_cloumns/";
// 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);
// Auto-fitting the Column of the worksheet
worksheet.autoFitColumn(4, 4, 6);
// Saving the modified Excel file in default (that is Excel 2003) format
workbook.save(dataDir + "AutoFitColumnsinaRangeofCells_out.xls");
// Print message
System.out.println("Columns auto fit successfully.");

Ajustement automatique des lignes pour les cellules fusionnées

Avec Aspose.Cells, il est possible de redimensionner automatiquement les lignes même pour les cellules qui ont été fusionnées à l’aide de l’API AutoFitterOptions. La classe AutoFitterOptions fournit la propriété AutoFitMergedCellsType qui peut être utilisée pour ajuster automatiquement les lignes pour les cellules fusionnées. AutoFitMergedCellsType accepte l’énumération AutoFitMergedCellsType qui contient les membres suivants.

  • AUCUN : Ignorer les cellules fusionnées.
  • FIRST_LINE : Se limite à étendre la hauteur de la première ligne.
  • LAST_LINE : Se limite à étendre la hauteur de la dernière ligne.
  • EACH_LINE : Se limite à étendre la hauteur de chaque ligne.
// 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(AutofitRowsforMergedCells.class) + "RowsAndColumns/";
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Accessing the first worksheet in the Excel file
Worksheet worksheet = workbook.getWorksheets().get(0);
// Create a range A1:B1
Range range = worksheet.getCells().createRange(0, 0, 1, 2);
// Merge the cells
range.merge();
// Insert value to the merged cell A1
worksheet.getCells().get(0, 0).setValue("A quick brown fox jumps over the lazy dog. A quick brown fox jumps over the lazy dog....end");
// Create a style object
Style style = worksheet.getCells().get(0, 0).getStyle();
// Set wrapping text on
style.setTextWrapped(true);
// Apply the style to the cell
worksheet.getCells().get(0, 0).setStyle(style);
// Create an object for AutoFitterOptions
AutoFitterOptions options = new AutoFitterOptions();
// Set auto-fit for merged cells
options.setAutoFitMergedCellsType(AutoFitMergedCellsType.EACH_LINE);
// Autofit rows in the sheet(including the merged cells)
worksheet.autoFitRows(options);
// Save the Excel file
workbook.save(dataDir + "AutofitRowsforMergedCells_out.xlsx");

Vous pouvez également utiliser les versions surchargées des méthodes autoFitRows et autoFitColumns acceptant une plage de lignes/colonnes et une instance de AutoFitterOptions pour ajuster automatiquement les lignes/colonnes sélectionnées avec les AutoFitterOptions souhaités.

Les signatures des méthodes susmentionnées sont les suivantes :

  1. autoFitRows(int startRow, int endRow, AutoFitterOptions options)
  2. autoFitColumns(int firstColumn, int lastColumn, AutoFitterOptions options)

Important à savoir