Использование формул или функций для обработки данных
Использование формул и функций
Aspose.Cells предоставляет класс Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит коллекцию Worksheets, которая позволяет получить доступ к каждому листу книги Excel. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию Cells. Каждый элемент в коллекции Cells представляет объект класса Cell.
Можно применять формулы к ячейкам с использованием свойств и методов, предлагаемых классом Cell, о котором подробнее рассказано ниже.
- Использование встроенных функций.
- Использование функций дополнений.
- Работа с массивными формулами
- Создание формулы R1C1.
Использование встроенных функций
Встроенные функции или формулы предоставляются в виде готовых функций для уменьшения усилий и времени разработчиков. См. список встроенных функций. Функции перечислены в алфавитном порядке. Будут поддерживаться дополнительные функции в будущем.
Aspose.Cells поддерживает большинство формул или функций, предлагаемых Microsoft Excel. Разработчики могут использовать эти формулы через API или электронную таблицу дизайнера. Aspose.Cells поддерживает огромный набор математических, строковых, логических, даты/времени, статистических, баз данных, поиска и ссылочных формул.
Используйте свойство Formula класса Cell для добавления формулы в ячейку. Сложные формулы, например
= H7*(1+IF(P7 = $L$3,$M$3, (IF(P7=$L$4,$M$4,0))))
, также поддерживаются в Aspose.Cells. Применяя формулу к ячейке, всегда начинайте строку с знака равенства (=), как при создании формулы в Microsoft Excel, и используйте запятую (,) для разделения параметров функции.
В приведенном ниже примере к первой ячейке коллекции Cells рабочего листа применяется сложная формула. Формула использует встроенную функцию IF, предоставленную Aspose.Cells.
Использование Дополнительных Функций
Мы можем иметь некоторые пользовательские формулы, которые мы хотим включить как дополнение Excel. При установке Cell.Formula встроенные функции работают нормально, однако есть необходимость установить пользовательские функции или формулы с помощью дополнительных функций.
Aspose.Cells предоставляет возможность зарегистрировать дополнительные функции, используя Worksheets.RegisterAddInFunction(). После того как мы установим Cell.Formula = anyFunctionFromAddIn, выходной файл Excel будет содержать вычисленное значение из функции AddIn.
Для регистрации функции дополнения в приведенном ниже образцовом коде следует загрузить файл XLAM. Аналогично, выходной файл “test_udf.xlsx” можно загрузить для проверки вывода.
Использование Массивной Формулы
Массивные формулы - это формулы, которые работают с массивами, а не с отдельными числами, как аргументами для функций, составляющих формулу. Когда массивная формула отображается, она окружается фигурными скобками ({}) как показано ниже.
Установка массивной формулы на ячейку G2
Некоторые функции Microsoft Excel возвращают массивы значений. Для вычисления нескольких результатов с помощью массивной формулы введите массив в диапазон ячеек с тем же количеством строк и столбцов, что и аргументы массива.
Возможно применить массивную формулу к ячейке, вызвав метод класса setArrayFormula. Метод setArrayFormula принимает следующие параметры:
- Массивная Формула, массивная формула.
- Количество строк, количество строк для заполнения результата массивной формулы.
- Количество столбцов, количество столбцов для заполнения результата массивной формулы.
Использование формулы R1C1
Примените формулу стиля ссылки R1C1 к ячейке с Cell классом setR1C1Formula свойства.