В результате моей пользовательской функции я хочу заполнить несколько ячеек рабочего листа, взяв ячейку, для которой была вызвана функция, в качестве базовой. Я должен вернуть некоторые сложные данные, которые не поместятся в одну ячейку.
Итак, вопрос: есть ли способ использовать Excel.run () внутри пользовательской функции? Или есть способ вернуть более сложные данные (объекты, массив объектов) в качестве возвращаемого значения пользовательской функции?
Это простой пример того, что я пытаюсь сделать, но это не работает:
/**
* Adds two numbers.
* @customfunction
* @param first First number
* @param second Second number
* @returns The sum of the two numbers.
*/
async function add(first: number, second: number): Promise<void> {
return Excel.run(async context => {
const worksheet = context.workbook.worksheets.getActiveWorksheet();
const range = worksheet.getRangeByIndexes(0, 0, 1, 4);
range.values = [[1, 2, 3, 4]];
return context.sync();
})
}
CustomFunctions.associate("ADD", add);