Распространить формулу в таблице или объекте списка автоматически при вводе данных в новые строки

Возможные сценарии использования

Иногда вам нужна формула в вашей таблице или объекте списка автоматически распространяется на новые строки при вводе новых данных. Это поведение по умолчанию в Microsoft Excel. Чтобы достичь того же с Aspose.Cells, используйте ListColumn.Formula свойство.

Распространить формулу в таблице или объекте списка автоматически при вводе данных в новые строки

В следующем образце кода создается таблица или объект списка таким образом, что формула в столбце B будет автоматически распространяться на новые строки, когда вы введете новые данные. Пожалуйста, проверьте выходной файл Excel, созданный с помощью этого кода. Если вы введете любое число в ячейку A3, вы увидите, что формула в ячейке B2 автоматически распространяется на ячейку B3.

Образец кода

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