Sprid formel i tabell eller listobjekt automatiskt när du matar in data i nya rader
Möjliga användningsscenario
Ibland vill du att en formel i din tabell eller listobjekt automatiskt sprider sig till nya rader när du matar in nya data. Detta är standardbeteendet för Microsoft Excel. För att uppnå samma sak med Aspose.Cells, använd egenskapen ListColumn.Formula.
Sprid formel i tabell eller listobjekt automatiskt när du matar in data i nya rader
Följande exempelkod skapar en tabell eller listobjekt på ett sådant sätt att formeln i kolumn B automatiskt sprider sig till nya rader när du matar in nya data. Vänligen kontrollera resultatet för excelfilen som genereras med denna kod. Om du anger något nummer i cell A3, kommer du att se att formeln i cell B2 automatiskt sprider sig till cell B3.
Exempelkod
// 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(PropagateFormulaInTableorListObject.class) + "articles/"; | |
// Create workbook object | |
Workbook book = new Workbook(); | |
// Access first worksheet | |
Worksheet sheet = book.getWorksheets().get(0); | |
// Add column headings in cell A1 and B1 | |
sheet.getCells().get(0, 0).putValue("Column A"); | |
sheet.getCells().get(0, 1).putValue("Column B"); | |
// Add list object, set its name and style | |
int idx = sheet.getListObjects().add(0, 0, 1, sheet.getCells().getMaxColumn(), true); | |
ListObject listObject = sheet.getListObjects().get(idx); | |
listObject.setTableStyleType(TableStyleType.TABLE_STYLE_MEDIUM_2); | |
listObject.setDisplayName("Table"); | |
// Set the formula of second column so that it propagates to new rows | |
// automatically while entering data | |
listObject.getListColumns().get(1).setFormula("=[Column A] + 1"); | |
// Save the workbook in xlsx format | |
book.save(dataDir + "PropagateFormulaInTable_out.xlsx"); |