我是新生的aspose细胞。我有一个模板excel文件,它有一个简单的数据表(带有标题行和一个空行)和一个条形图(数据表配置为源)。
使用aspose单元版本8.1.1。我试图读取excel文件,获取表对象并将数据插入其中。
我的目标是将数据插入表格并自动刷新图表。
这就是我从excel中获取表对象的方式
Workbook workbook = new Workbook(new TestReportsProcessor().getClass().getResourceAsStream("/ChartRefreshTest.xlsx"));
Worksheet worksheet = workbook.getWorksheets().get("Sheet1");
ListObjectCollection listObjectCollection = worksheet.getListObjects();
ListObject table = listObjectCollection.get(0);
但我没有看到ListObject中有任何方法可以选择在表中添加/插入行。
选项我已经尝试过:我可以通过获取表格的开始和结束行来获取单元格位置并手动将数据插入到单元格中。栏目位置。但是,当我以这种方式插入数据时,表格预设结束位置之外的数据不会作为表格的一部分插入。即当我插入行时,表格没有扩展。
你能帮忙吗?
答案 0 :(得分:1)
您可以将记录插入表格对象。完成所有记录后,您应该更新表格的范围。
在aspose ListObject对象中,有一种方法:
public void Resize(int startRow,int startColumn,int endRow,int endColumn,bool hasHeaders);
这将使你的桌子的范围变为新的。
答案 1 :(得分:0)
使用Cells
集合中的insertRows
方法在工作表中插入行。这是一个示例代码。
Workbook workbook = new Workbook(new TestReportsProcessor.class.getResourceAsStream("/ChartRefreshTest.xlsx"));
Worksheet worksheet = workbook.getWorksheets().get("Sheet1");
// Insert a row at index 3
worksheet.getCells().insertRows(3);
有关详细信息,请参阅Inserting and Deleting Rows and Columns。