Zeilen und Spalten automatisch anpassen

Automatische Anpassung

Aspose.Cells bietet eine Klasse, Workbook, die eine Microsoft Excel-Datei darstellt. Die Workbook Klasse enthält eine Worksheets-Sammlung, die den Zugriff auf jede Arbeitsmappe in der Excel-Datei ermöglicht.

Eine Arbeitsmappe wird durch die Worksheet-Klasse repräsentiert. Die Worksheet-Klasse bietet eine Vielzahl von Eigenschaften und Methoden zur Verwaltung einer Arbeitsmappe. In diesem Artikel wird die Verwendung der Worksheet-Klasse zum automatischen Anpassen von Zeilen oder Spalten behandelt.

AutoFit Zeile - Einfach

Der einfachste Ansatz zum automatischen Anpassen der Breite und Höhe einer Zeile besteht darin, die Methode autoFitRow der Klasse Arbeitsblatt aufzurufen. Die Methode autoFitRow erfordert einen Zeilenindex (der zu ändernden Zeile) als Parameter.

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

AutoFit Zeile in einem Bereich von Zellen

Eine Zeile besteht aus vielen Spalten. Aspose.Cells ermöglicht es Entwicklern, eine Zeile basierend auf dem Inhalt in einem Bereich von Zellen in der Zeile automatisch anzupassen, indem sie eine überladene Version der Methode autoFitRow aufrufen. Sie nimmt die folgenden Parameter an:

  • Zeilenindex, der Index der zu automatisch anzupassenden Zeile.
  • Erster Spaltenindex, der Index der ersten Spalte der Zeile.
  • Letzter Spaltenindex, der Index der letzten Spalte der Zeile.

Die Methode autoFitRow überprüft den Inhalt aller Spalten in der Zeile und passt dann die Zeile automatisch an.

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

Spalten automatisch anpassen - Einfach

Der einfachste Weg, die Breite und Höhe einer Spalte automatisch anzupassen, besteht darin, die Methode autoFitColumn der Klasse Worksheet aufzurufen. Die Methode autoFitColumn nimmt den Spaltenindex (der zu ändernden Spalte) als Parameter.

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

Spalten in einem Zellenbereich automatisch anpassen

Eine Spalte besteht aus vielen Zeilen. Es ist möglich, eine Spalte basierend auf dem Inhalt in einem Zellenbereich in der Spalte automatisch anzupassen, indem eine überladene Version der Methode autoFitColumn aufgerufen wird, die die folgenden Parameter annimmt:

  • Spaltenindex, stellt den Index der Spalte dar, deren Inhalt automatisch angepasst werden soll
  • Index der ersten Zeile, stellt den Index der ersten Zeile der Spalte dar
  • Index der letzten Zeile, stellt den Index der letzten Zeile der Spalte dar

Die Methode autoFitColumn überprüft den Inhalt aller Zeilen in der Spalte und passt dann die Spalte automatisch an.

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

Automatisches Anpassen von Zeilen für zusammengeführte Zellen

Mit Aspose.Cells ist es möglich, auch für zusammengeführte Zellen mit der API AutoFitterOptions die Zeilen automatisch anzupassen. Die Klasse AutoFitterOptions bietet die Eigenschaft AutoFitMergedCellsType, die verwendet werden kann, um Zeilen für zusammengeführte Zellen automatisch anzupassen. AutoFitMergedCellsType akzeptiert das Enum AutoFitMergedCellsType mit folgenden Elementen:

  • NONE: Zusammengeführte Zellen ignorieren.
  • FIRST_LINE: Nur die Höhe der ersten Zeile erweitern.
  • LAST_LINE: Nur die Höhe der letzten Zeile erweitern.
  • EACH_LINE: Nur die Höhe jeder Zeile erweitern.
// 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");

Sie können auch die überladenen Versionen der Methoden autoFitRows und autoFitColumns verwenden, die einen Bereich von Zeilen/Spalten und eine Instanz von AutoFitterOptions annehmen, um die ausgewählten Zeilen/Spalten entsprechend mit den gewünschten AutoFitterOptions automatisch anzupassen.

Die Signaturen der genannten Methoden lauten wie folgt:

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

Wichtig zu wissen