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 direkteste Ansatz zur automatischen Anpassung der Breite und Höhe einer Zeile besteht darin, die Methode Worksheet autoFitRow aufzurufen. Die Methode autoFitRow nimmt einen Zeilenindex (der Zeile, die angepasst werden soll) 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 erlaubt Entwicklern, eine Zeile automatisch an den Inhalt innerhalb eines Zellbereichs anzupassen, indem eine überladene Version der Methode autoFitRow aufgerufen wird. Diese Methode nimmt folgende Parameter:

  • 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 prüft die Inhalte aller Spalten in der Zeile und passt 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, ist die Verwendung der Methode autoFitColumn der Worksheet Klasse. Die Methode autoFitColumn akzeptiert den Spaltenindex (der Spalte, die angepasst werden soll) 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 den Inhalt in einem Zellbereich in der Spalte anzupassen, indem eine überladene Version der autoFitColumn Methode aufgerufen wird, die folgende Parameter akzeptiert:

  • 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 die Inhalte aller Zeilen in der Spalte und passt die Spalte entsprechend 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: Erweitert nur die Höhe der ersten Zeile.
  • LAST_LINE: Erweitert nur die Höhe der letzten Zeile.
  • EACH_LINE: Erweitert nur die Höhe jeder Zeile.
// 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 von autoFitRows & autoFitColumns verwenden, die einen Bereich von Zeilen/Spalten und eine Instanz von AutoFitterOptions akzeptieren, um die ausgewählten Zeilen/Spalten entsprechend 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