Что такое аргументы в экселе
������� ���������� ��������� MS Office 2007: Microsoft Excel
Excel содержит большое количество встроенных функций, которые вы можете использовать в своих формулах. К ним относятся как достаточно распространенные функции, например СУММ, СРЗНАЧ и КОРЕНЬ , так и функции, специально предназначенные для определенных целей, например статистические или инженерные. Функции существенно повышают эффективность формул. Они могут упростить формулы и сделать их понятнее. Более того, в большинстве случаев функции позволяют производить вычисления, которые без них было бы невозможно выполнить. Покажем на примере. Что если вам нужно найти наибольшее значение диапазона ячеек? Это еще один пример того, как без использования функции вы не сможете получить ответ. Например, формула =МАКС (A1: D100) позволяет отыскать наибольшее значение в диапазоне A1: D100 .
Значения, передаваемые функции, называются аргументами функции . При записи функции сначала пишется ее имя, а потом в круглых скобках приводится аргумент (или аргументы) функции. Например, формула, вычисляющая квадратный корень из числа 4 будет выглядеть следующим образом: КОРЕНЬ (4).
Функции различаются по тому, как они используют аргументы. В зависимости от этого определяются следующие типы функций:
- функции без аргументов;
- функции с одним аргументом;
- функции с фиксированным числом аргументов;
- функции с неопределенным числом аргументов;
- функции с необязательными аргументами.
Функция тдата , которая возвращает текущую дату и время, является функцией без аргументов. Даже в том случае, если в функции нет аргументов, все равно после имени функции обязательно должны быть пустые скобки. Поэтому, чтобы функция тдата работала правильно, следует ввести ее имя, а затем пустые круглые скобки: = тдата ().
Если в функции используется несколько аргументов, то каждый из них отделяется точкой с запятой . В качестве аргумента может выступать адрес ячейки или диапазон, числовое значение, текстовая строка, выражение или другая функция.
Есть два основных способа ввода функции в формулу: ввести ее вручную или найти с помощью мастера формул.
Благодаря средству Автозавершение формул при наборе первых символов функции Excel отображает постоянно изменяющийся список функций, названия которых совпадают с уже напечатанными вами буквами (рис.35), причем предлагаются даже краткие описания этих функций. Встретив нужную функцию, которую хотите вставить в формулу, для окончания ввода названия используйте клавишу Tab . Подобные списки открываются при вводе названий функций, имен диапазонов и ссылок на таблицы.

Покажем применение этого средства на примере ввода функции промежуточные.итоги , которая должна вычислять среднее значение диапазона ячеек, поименованного как Выборка.
1. Создайте диапазон ячеек, поименованного как Выборка, заполнив его значениями.
2. Перейдите в пустую ячейку, и введите знак равенства как начало ввода формулы.
3. Напечатайте букву П , чтобы открыть список названий функций и имен диапазонов, которые начинаются на букву П . Средство Автозавершение формул не определяет регистр букв, поэтому можно вводить имена функций как строчными, так и прописными буквами.
4. Напечатайте вторую букву Р . Список теперь будет отображать функции и диапазоны, имена которых начинаются на ПР (рис.36).

5. Теперь в списке видно название функции промежуточные . итоги . С помощью клавиш управления курсором перейдите в списке к названию функции ПРОМЕЖУТОЧНЫЕ. итоги и нажмите клавишу Tab . Excel введет выбранное название функции в ячейку и даже напечатает открывающую скобку после имени функции. Кроме того, список теперь будет отображать возможные значения первого аргумента данной функции, как показано ниже на рис.37.

6. С помощью клавиш управления курсором перейдите в списке к названию аргумента СРЗНАЧ , и нажмите клавишу Tab . Excel в качестве первого аргумента вставит число 101, код для вычисления среднего значения.
7. Введите точку с запятой для отделения первого аргумента от следующего.
8. Введите букву В (первую букву слова Выборка ). Excel отобразит список названий функций и имен диапазонов, которые начинаются на букву В, как показано на рис.38.

9. В этом списке выделите Выборка, и нажмите клавишу Tab.
10. Введите закрывающую скобку, и завершите ввод клавишей Enter – формула создана
Другой способ вставки функции в формулу заключается в выборе этой функции из группы команд Библиотека функций , расположенной на ленточной вкладке Формулы . Этот способ удобен, если известно к какой группе относится ваша функция. Выберите из интересующей вас категории функций (например, Финансовые, Логические, Текстовые и т.д.), нужную функцию. После этого в открывшемся окне Аргументы функции задайте значения аргументов выбранной функции.
Еще один метод вставки функции в формулу заключается в использовании Мастера функций. Для этого
- щелкните на кнопке Вставить функцию f x , которая находится в левой части строки формул;
- или выберите команду Формулы-Библиотек-Вставить функцию f x ;
- или нажмите комбинацию клавиш Shift+F3 .
В поле Категория окна Мастер функций представлен список категорий функций. При выборе одной из категорий появляется перечень функций, включенных в эту категорию. В категории 10 недавно использовавшихся перечислены те функции, которые недавно были использованы. В категорию Полный алфавитный перечень включены все имеющиеся функции из всех категорий. Этот список следует использовать, если известно название функции, но неизвестна категория.
С помощью окна Мастер функций можно выбрать функцию, даже если неизвестно точно, какую функцию следует применить. Введите в поле Поиск функции краткое описание действия функции, и щелкните на кнопке Найти. Excel выведет список подходящих функций, среди которых вы сможете выбрать нужную. Обратите внимание, что при выборе функции в нижней части диалогового окна Мастер функций появляется ее синтаксис и краткое описание.


Выбрав нужную функцию, в появившемся окне Аргументы функции (рис.39) необходимо задать значения аргументов функции. Заметьте, что вид диалогового окна изменяется в зависимости от выбранной функции. Каждый аргумент имеет свое поле ввода. Чтобы указать диапазон ячеек в качестве аргумента функции, следует свернуть окно кнопкой (она находится с правой стороны поля ввода аргумента), выбрать с листа нужный диапазон и для восстановления окна Аргументы функции щелкнуть на ту же кнопку. После определения всех аргументов функции и завершения ввода кнопкой OK, Excel закроет окно Аргументы функции и вычислит результат.
В Excel есть и другой способ вставки функции. Во время ввода формулы после ввода «=» поле Имя заменяется раскрывающимся списком Функции , в котором представлены десять недавно использовавшихся функций. Если среди них есть нужная вам функция, выберите ее из списка. Если же нужной функции в этом списке не оказалось, выберите пункт Другие функции для открытия диалогового окна Мастер функций .
Аргументы функции на VBA
В этой статье речь пойдет о том, как создавать функции, которые не принимают никаких аргументов, а также про функции, которые принимают несколько аргументов. Расскажем также о необязательных аргументах пользовательской функции.
Создание функции без каких-либо аргументов
Начнем с функций, которые не имеют аргументов. В качестве примера, можете вспомнить такие стандартные функции как СЕГОДНЯ() или СЛЧИС(). Эти функции не зависят от каких либо входных параметров. Давайте тоже создадим аналогичную функцию. Например функцию, которая будет возвращать нам название текущего листа (нам ведь не нужны никакие параметры в данном случае. Код функции приведен ниже:
Function НазваниеЛиста() As String НазваниеЛиста = ActiveSheet.Name End Function
Как видите скобки мы оставили пустые, указали наименование функции НазваниеЛиста и задали тип возвращаемых значение As String (Текстовое значение).
Единственный нюанс данной функции состоит в том, что она автоматически не изменит значение, если Вы переименуете лист. К сожалению Excel запускает процесс пересчета когда меняется какой либо аргумент, но тут их нет и функций «не знает» когда пересчитывать значение. Принудительно можно запустить пересчет книги с помощью сочетания клавиш Ctrl + Alt + F9. Чтобы заставить формулу пересчитываться всякий раз, когда происходит изменение на листе, нужно указать еще одно строку кода.
Function НазваниеЛиста() As String Application.Volatile True НазваниеЛиста = ActiveSheet.Name End Function
Теперь, если вы измените имя листа, функция будет пересчитываться. Функция также будет пересчитываться при любом редактировании листа.
Создание функции с одним аргументом
В предыдущей статье Создаем свою первую функцию в Excel мы достаточно подробно рассказали о создании функции с одним аргументом. Поэтому приведем еще один пример простой но полезной функции и перейдем к следующему пункту.
Наверняка вы сталкивались с тем, что необходимо написать огромную формулу, проверяющую несколько условий с помощью функций ЕСЛИ. Получалось что-то вроде нескольких вложенных функций ЕСЛИ. Давайте попробуем решить эту задачу путем создания пользовательской функции. Например нам необходимо рассчитать значение премии в зависти от процента выполненного плана. Если план выполнен менее чем 50% нам ничего не платят. Если от 50 до 75 процентов, то дают премию 5 000 рублей. Если от 75 до 90% — 15 000 рублей. От 90 до 100% — 25 000 рублей. И если более 100%, то 50 000 тысяч. Давайте писать код:
Function Премия(Процент As Double) As Double Dim res As Double Select Case Процент Case Is < 0.5 res = 0 Case Is < 0.75 res = 5000 Case Is < 0.9 res = 15000 Case Is < 1 res = 25000 Case Else res = 50000 End Select Премия = res End Function
Смысл кода думаю ясен, конструкция Select Case проверяет условие и выдает результат если условие истинно.
А теперь применим функцию и посмотрим как из сложной функции мы сделали короткую, а самое главное понятную для других пользователей функцию.
Создание функции с несколькими аргументами
Сейчас научимся создавать функции с несколькими переменными и заодно создадим достаточно полезную для работы функцию. Наверняка у всех была похожая задача. Нужно из ячейки, которая содержит ФИО извлечь, к примеру только имя или отчество. Можно обойтись набором стандартных функций, но сложновато. Подобно функциям листа, вы можете создавать функции в VBA, которые принимают несколько аргументов.
В приведенном ниже коде будет создана функция, которая будет извлекать текст перед указанным разделителем. Он принимает два аргумента - ссылку на ячейку с текстовой строкой и разделитель.
Function Слово(Текст As String, Номер As Long) As String Dim splt As Variant splt = Split(Текст, " ") Слово = splt(Номер - 1) End Function
Когда вам необходимо использовать более одного аргумента в функции, то нужно их все перечислить в скобках через запятую. Обратите внимание, что для каждого аргумента вы можете указать тип данных. В приведенном выше примере переменная Текст была объявлена As String (как текст), а переменная Номер объявлена как Long (целое число). Если вы не укажете какой-либо тип данных, VBA считает, что тип данных Variant - этот тип переменных сам изменяет свой тип в зависимости от значения, но потребляет больше ресурсов.
При использовании функций на листе вы можете в качестве аргументов указывать как статичное значение, так и делать ссылки на ячейки.
На картинке ниже, которая демонстрирует работу нашей функции можно увидеть, что в качестве первого параметра (Текст) мы берем ссылку на ячейку, а в качестве второго аргумента вводим число вручную, хотя также могли бы ссылаться на ячейку.
Создание функции с необязательными аргументами
В Excel есть много функций, в которых некоторые аргументы являются необязательными.
Например, всем известная функция ВПР. У нее 3 обязательных аргумента и один необязательный. Он обозначается в квадратных скобках - [интервальный_просмотр].
Если вы не укажете один из обязательных аргументов, ваша функция выдаст ошибку, а если не указать необязательный аргумент функция продолжит работу.
Но это не означает, что необязательные аргументы бесполезны. Они призваны облегчить функцию и использовать значения по умолчанию.
Чтобы создать функцию с необязательными аргументами, необходимо перед названием аргумента указать инструкцию Optional. Существует правило - все необязательные переменные должны идти после обязательных. Нельзя создать функцию, где сначала будет необязательный аргумент, а после обязательные.
Приведем пример функции с необязательными аргументами
Function ТолькоТекст(Ячейка As Range, Optional Прописные As Boolean = False) As String Dim i As Long Dim result As String For i = 1 To Len(Ячейка) If Not IsNumeric(Mid(Ячейка, i, 1)) Then result = result & Mid(Ячейка, i, 1) Next If Прописные Then result = UCase(result) ТолькоТекст = result End Function
Тут хочу обратить внимание на первую строку, а именно на:
Optional Прописные As Boolean = False
Optional обозначает, что переменная необязательная, далее идет наименование аргумента - Прописные, далее при необходимости указывается тип данных. В нашем случае это логическая переменная Boolean. А далее? после знака равно, указывается значение по умолчанию. Если при использовании функции второй аргумент не будет указан, то переменной присвоется значение по умолчанию, в нашем случае False.
Далее в коде вы увидите строку:
If Прописные Then result = UCase(result)
Она как раз и проверяет значение необязательного аргумента. Если в качестве аргумента указано значение ИСТИНА (или 1), то функция вернет текст прописными буквами.
Все функции вы можете скачать в файле к этой статье. В следующих статьях поговорим о функциях, которые возвращают массив значений.
Понятие функции в Excel
Что такое функция в Excel и как с ней работать?
Функция Excel — это предопределенная формула, которая возвращает результат, оперируя заранее заданными аргументами (значениями).
Excel имеет множество интересных функций, которые смогут значительно сэкономить время при вычислении сумм; максимальных, средних и минимальных значений; подсчета данных и т.д. Для корректной работы функций следует соблюдать правила записи — СИНТАКСИС ФУНКЦИЙ.
Синтаксис функций (формул):
У стандартного синтаксиса функций есть знак равенства (=), имя функции (как например: “ СУММ ”, ” ЕСЛИ ”, ” ВПР ” и т.д.) и необходимые аргументы. В аргументах находиться информация, которая нужна для вычисления. Например, ниже представленная функция “ СУММ ” суммирует значения в диапазоне B1:B10.

Как работать с аргументами функции в Excel
В Excel существует множество полезных функций со своим уникальным набором аргументов. Существует даже такие, которые не имеют ни одного аргумента, такие например как функции “ СЕГОДНЯ() ” (Возвращает текущую дату) и “ ПИ() ” (возвращает число 3,14159265358979 — математическую константу «пи» с точностью до 15 цифр).
Для вставки функции можно воспользоваться диалоговым окном Мастер функций. Это окно можно вызвать одним из следующих способов:
- кнопку Вставить функцию, расположенную в группе Формулы ► Библиотека функций.
- Нажмите кнопку Вставить функцию слева от строки формул.
- Нажмите Shift+F3.

Часто используемые функции довольно быстро запоминаются и воспользоваться ими не заставит труда, но, если вы забыли или не знаете её имя, можно использовать поисковое поле и нажать на кнопку “Найти”. После того как функция нашлась нажмите на “ОК” и следом откроется окно “Аргументы функции”, в котором можно ознакомится с аргументами данной функции.

При вводе функцию вручную (без помощи окна Мастер функций) для вызова диалогового окна “Аргументы функции” используйте сочетание клавиш Ctrl+A . Следует заметить, что данное сочетание не работает после ввода каких-либо аргументов данной функции.
Сочетание клавиш Ctrl+Shift+A заполняет функцию фиктивными аргументами. Это может быть полезно, если вы еще не знаете, какими данными заполнить функцию. Формула будет возвращать ошибку и позже следует аргументы заменить. Например при вводе функции “ =СУММЕСЛИ ” зажать Ctrl+Shift+A , то получим вот такой результат: =СУММЕСЛИ(диапазон;критерий;диапазон_суммирования)
- Об авторе
- Недавние публикации
Как работать с аргументами функции в таблицах Excel
В Excel есть большое количество полезных функций, и каждая из них имеет свой собственный, уникальный набор аргументов. Вы, вероятно, уже запомнили аргументы тех функций, которые часто используете, но что насчет других?
Лучший способ вставки функции — использование диалогового окна Мастер функций. Это окно вызывается любым из следующих способов.
- Нажмите кнопку Вставить функцию, расположенную в группе Формулы ► Библиотека функций.
- Нажмите кнопку Вставить функцию слева от строки формул.
- Нажмите Shift+F3.
Если вы не знаете имя функции, которая вам нужна, то можете найти ее, набрав текст в поле Поиск функции и нажав кнопку Найти (рис. 80.1). После того как вы определите функцию, нажмите кнопку ОК, и вы увидите окно Аргументы функции, которое ознакомит вас с аргументами данной функции, как показано на рис. 80.2.

Рис. 80.1. Используйте окно Мастер функций, чтобы найти нужную вам функцию
Между прочим, если вы вводите функцию вручную (без помощи диалогового окна Мастер функций), то можете нажать Ctrl+A для открытия диалогового окна Аргументы функции. Это сочетание клавиш работает, только если вы еще не вводили какие-либо аргументы для функции.

Рис. 80.2. Окно Аргументы функции помогает ввести аргументы функции
В некоторых случаях вы можете включить «фиктивные» аргументы для функции — заполнители, которые позже будут заменены. Этот подход окажется полезным, если вы еще не знаете, ссылки на какие ячейки будут использованы. Для вставки названий аргументов в качестве заполнителей нажмите Ctrl+Shift+A после ввода имени функции. Excel использует названия аргумента в качестве самих аргументов.
Например, если нажать Ctrl+Shift+A при вводе функции ВПР, то Excel вставит следующие названия: =ВПР(искомое_значение;таблица;номер_столбца;интервальный_просмотр) . Формула, конечно, возвращает ошибку, так что вы должны заменить фиктивные аргументы фактическими значениями или ссылками на ячейки.