Функция — это заранее заданная формула в Excel и Google Sheets , предназначенная для выполнения определенных вычислений в ячейке, в которой она находится.
Информация в этой статье относится к Excel 2019, Excel 2016, Excel 2013 и Google Sheets.
Синтаксис функции и аргументы
Синтаксис функции относится к макету функции и включает имя функции, скобки, разделители запятых и аргументы . Как и все формулы, функции начинаются со знака равенства ( = ), за которым следует имя функции и ее аргументы:
- Имя функции сообщает Excel, какие вычисления выполнять.
- Аргументы содержатся в круглых скобках или круглых скобках и указывают функции, какие данные использовать в этих вычислениях.
Например, одна из наиболее часто используемых функций в Excel и Google Sheets — это функция SUM :
= СУММА (D1: D6)
В этом примере:
- Имя говорит Excel, чтобы сложить данные в выбранных ячейках.
- Функция аргумента ( D1: D6 ) добавляет содержимое диапазона ячеек от D1 до D6 .
Вложенные функции в формулах
Полезность встроенных функций Excel можно расширить, вложив одну или несколько функций в другую функцию в формуле. Эффект вложенных функций заключается в том, что в одной ячейке рабочего листа можно выполнять несколько вычислений .
Для этого вложенная функция выступает в качестве одного из аргументов для основной или внешней функции. Например, в следующей формуле функция SUM вложена в функцию ROUND .
= КРУГЛЫЙ (СУММА (D1: D6), 2)
При оценке вложенных функций Excel выполняет сначала самую глубокую или самую внутреннюю функцию, а затем направляется наружу. В результате формула выше теперь будет:
- Найдите сумму значений в ячейках от D1 до D6 .
- Округлите этот результат до двух десятичных знаков.
Начиная с Excel 2007, было разрешено до 64 уровней вложенных функций. В предыдущих версиях было разрешено семь уровней вложенных функций.
Рабочий лист против пользовательских функций
В Excel и Google Sheets есть два класса функций:
- Функции рабочего листа
- Пользовательские или пользовательские функции
Функции рабочего листа являются родными для программы, такие как функции SUM и ROUND, описанные выше. Пользовательские функции, с другой стороны, являются функциями, написанными или заданными пользователем.
В Excel пользовательские функции написаны на встроенном языке программирования: Visual Basic для приложений или VBA для краткости. Функции создаются с помощью редактора Visual Basic, который устанавливается вместе с Excel.
Пользовательские функции Google Sheets написаны в скрипте Apps , форме JavaScript, и создаются с помощью редактора скриптов, расположенного в меню « Сервис» .
Пользовательские функции обычно, но не всегда, принимают некоторую форму ввода данных и возвращают результат в ячейку, где они расположены.
Ниже приведен пример пользовательской функции, которая рассчитывает скидки покупателя, написанные в коде VBA. Оригинальные определяемые пользователем функции, или UDFs , которые опубликованы на веб — сайте компании Microsoft :
Функция Discount (количество, цена)
Если количество> = 100, то
Discount = количество * цена * 0,1
Остальное
Discount = 0
End If
Discount = Application.Round (Discount, 2)
End Function
Ограничения
В Excel пользовательские функции могут возвращать значения только в те ячейки, в которых они находятся. Они не могут выполнять команды, которые изменяют операционную среду Excel, такие как изменение содержимого или форматирования ячейки.
База знаний Microsoft содержит следующие ограничения для пользовательских функций:
- Вставка, удаление или форматирование ячеек на листе.
- Изменение значения данных в другой ячейке.
- Перемещение, переименование, удаление или добавление листов в рабочую книгу .
- Изменение любых параметров среды, таких как режим расчета или виды экрана.
- Установка свойств или выполнение большинства методов.
Пользовательские функции и макросы в Excel
Хотя Google Sheets в настоящее время не поддерживает их, в Excel макросы представляют собой серию записанных шагов, которые автоматизируют повторяющиеся задачи на листе. Примеры задач, которые можно автоматизировать, включают форматирование данных или операции копирования и вставки.
Несмотря на то, что оба используют язык программирования Microsoft VBA, они отличаются в двух отношениях:
- Пользовательские функции выполняют вычисления, а макросы — действия. Как упоминалось выше, пользовательские функции не могут выполнять операции, которые влияют на среду программы, в то время как макросы могут.
- В окне редактора Visual Basic их можно различить, потому что:
- UDF начинаются с оператора Function и заканчиваются End Function .
- Макросы начинаются с оператора Sub и заканчиваются End Sub .