добавление новой формулы
name | string | название формулы (буквами в верхнем регистре) |
handler | function | обработчик, который определяет логику работы формулы |
$$("ss1").registerMathMethod("NEW", function(value){
// ваш обработчик
});
Функция-обработчик может получать параметры, например значение одной ячейки, значения из диапазона ячеек (значения будут передаваться по ссылкам, например H3
или H3:H5
) или произвольные параметры (например, число знаков после запятой, до которого нужно округлить число).
Новую формулу можно использовать как обычную встроенную функцию: =NEW(H3:H5);
.
Вы можете добавить подсказки для параметров новой формулы, обновив локаль webix.i18n.spreadsheet.liveEditor["functions-syntax"].
Например:
const ssheet = webix.ui({
view: "spreadsheet",
toolbar: "full"
});
ssheet.registerMathMethod("RANDOM", function(value){ value = value || 100; return Math.round(Math.random()*value); });
webix.i18n.spreadsheet.liveEditor["functions-syntax"].RANDOM = [ ["Digit", "Optional. The number digit."] ];
ssheet.setCellValue(1,1,"=RANDOM(100)")