Zugriff auf die Tabelle von Cell und Hinzufügen von Werten darin mithilfe von Zeilen- und Spalten-Offsets
Normalerweise fügen Sie Werte innerhalb des Tabellen- oder Listenobjekts hinzu, indem Sie verwendenCell.putValue() Methode. Aber manchmal müssen Sie möglicherweise Werte innerhalb des Tabellen- oder Listenobjekts hinzufügen, indem Sie die Zeilen- und Spalten-Offsets verwenden.
Um von einer Zelle aus auf Tabellen- oder Listenobjekte zuzugreifen, verwenden Sie dieCell.getTable() Methode. Und um darin Werte mithilfe der Zeilen- und Spalten-Offsets hinzuzufügen, verwenden Sie dieListObject.putCellValue(rowOffset,columnOffset,value) Methode.
Beispiel
Screenshots, die die Quell- und Ausgabedateien vergleichen
Der folgende Screenshot zeigt die im Code verwendete Excel-Quelldatei. Sie enthält die leere Tabelle und hebt die Zelle D5 hervor, die innerhalb der Tabelle liegt. Auf diese Tabelle greifen wir von Zelle D5 aus mit zuCell.getTable() Methode und fügen Sie dann die darin enthaltenen Werte mit beiden hinzuCell.putValue() undListObject.putCellValue(rowOffset,columnOffset,value) Methoden.
Der folgende Screenshot zeigt die vom Code generierte Excel-Ausgabedatei. Wie Sie sehen können, hat Zelle D5 einen Wert und Zelle F6, die sich am Offset 2,2 der Tabelle befindet, hat einen Wert.
Java-Code für den Zugriff auf die Tabelle aus der Zelle und das Hinzufügen von Werten darin mithilfe von Zeilen- und Spalten-Offsets
Der folgende Beispielcode lädt die Excel-Quelldatei, wie im obigen Screenshot gezeigt, fügt Werte in die Tabelle ein und generiert die Excel-Ausgabedatei, wie oben gezeigt.
// 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.getDataDir(AccessingTablefromCell.class); | |
// Create workbook from source Excel file | |
Workbook workbook = new Workbook(dataDir + "source.xlsx"); | |
// Access first worksheet | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Access cell D5 which lies inside the table | |
Cell cell = worksheet.getCells().get("D5"); | |
// Put value inside the cell D5 | |
cell.putValue("D5 Data"); | |
// Access the Table from this cell | |
ListObject table = cell.getTable(); | |
// Add some value using Row and Column Offset | |
table.putCellValue(2, 2, "Offset [2,2]"); | |
// Save the workbook | |
workbook.save(dataDir + "output.xlsx"); |