Rückgabe eines Wertebereichs unter Verwendung von ICustomFunction

Rückgabe eines Wertebereichs mit ICustomFunction

Der folgende Code implementiert ICustomFunction und gibt den Wertebereich über seine Methode zurück. Überprüfen Sie die erstellte Exceldatei und das pdf, die mit dem Code generiert wurden, als Referenz.

Erstellen Sie eine Klasse mit einer Funktion CalculateCustomFunction. Diese Klasse implementiert ICustomFunction.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
import java.util.ArrayList;
import com.aspose.cells.AbstractCalculationEngine;
import com.aspose.cells.CalculationData;
import com.aspose.cells.DateTime;
public class CustomFunctionStaticValue extends AbstractCalculationEngine {
@Override
public void calculate(CalculationData calculationData) {
calculationData.setCalculatedValue(new Object[][] { new Object[] { new DateTime(2015, 6, 12, 10, 6, 30), 2 },
new Object[] { 3.0, "Test" } });
}
}

Verwenden Sie die obige Funktion jetzt in Ihrem Programm.

// 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(ReturningRangeOfValues.class);
Workbook wb = new Workbook();
Cells cells = wb.getWorksheets().get(0).getCells();
Cell cell = cells.get(0, 0);
cell.setArrayFormula("=MYFUNC()", 2, 2);
Style style = cell.getStyle();
style.setNumber(14);
cell.setStyle(style);
CalculationOptions copt = new CalculationOptions();
copt.setCustomFunction(new CustomFunctionStaticValue());
wb.calculateFormula(copt);
// Save to xlsx by setting the calc mode to manual
wb.getSettings().getFormulaSettings().setCalculationMode(CalcModeType.MANUAL);
wb.save(dataDir + "output.xlsx");
// Save to pdf
wb.save(dataDir + "output.pdf");