Полные сведения о формулах в Excel
Начните создавать формулы и использовать встроенные функции, чтобы выполнять расчеты и решать задачи.

Важно: Вычисляемые результаты формул и некоторые функции листа Excel могут несколько отличаться на компьютерах под управлением Windows с архитектурой x86 или x86-64 и компьютерах под управлением Windows RT с архитектурой ARM. Подробнее об этих различиях.
Важно: В этой статье мы обсудим XLOOKUP и ВПР, которые похожи. Попробуйте использовать новую функцию ПРОСМОТРX, улучшенную версию функции ВПР, которая работает в любом направлении и по умолчанию возвращает точные совпадения, что делает ее проще и удобнее в использовании, чем предшественницу.
Создание формулы, ссылающейся на значения в других ячейках
- Выделите ячейку.
- Введите знак равенства » ocpAlert»>Примечание: Формулы в Excel начинаются со знака равенства.

Выберите ячейку или введите ее адрес в выделенной.

Просмотр формулы
При вводе в ячейку формула также отображается в строке формул.


-
Чтобы увидеть формулу в строке формул, выберите ячейку.
Ввод формулы, содержащей встроенную функцию

- Выделите пустую ячейку.
- Введите знак равенства «=», а затем — функцию. Например, чтобы получить общий объем продаж, нужно ввести «=СУММ».
- Введите открывающую круглую скобку «(«.
- Выделите диапазон ячеек, а затем введите закрывающую круглую скобку «)».
Скачивание книги «Учебник по формулам»
Мы подготовили для вас книгу Начало работы с формулами, которая доступна для скачивания. Если вы впервые пользуетесь Excel или даже имеете некоторый опыт работы с этой программой, данный учебник поможет вам ознакомиться с самыми распространенными формулами. Благодаря наглядным примерам вы сможете вычислять сумму, количество, среднее значение и подставлять данные не хуже профессионалов.
Подробные сведения о формулах
Чтобы узнать больше об определенных элементах формулы, просмотрите соответствующие разделы ниже.
Части формулы Excel
Формула также может содержать один или несколько таких элементов, как функции, ссылки, операторы и константы.
Части формулы
1. Функции. Функция ПИ() возвращает значение числа пи: 3,142.
2. Ссылки. A2 возвращает значение ячейки A2.
3. Константы. Числа или текстовые значения, введенные непосредственно в формулу, например 2.
4. Операторы. Оператор ^ (крышка) применяется для возведения числа в степень, а * (звездочка) — для умножения.
Использование констант в формулах Excel
Константа представляет собой готовое (не вычисляемое) значение, которое всегда остается неизменным. Например, дата 09.10.2008, число 210 и текст «Прибыль за квартал» являются константами. выражение или его значение константами не являются. Если формула в ячейке содержит константы, а не ссылки на другие ячейки (например, имеет вид =30+70+110), значение в такой ячейке изменяется только после редактирования формулы. Обычно лучше помещать такие константы в отдельные ячейки, где их можно будет легко изменить при необходимости, а в формулах использовать ссылки на эти ячейки.
Использование ссылок в формулах Excel
Ссылка указывает на ячейку или диапазон ячеек листа и сообщает Microsoft Excel, где находятся необходимые формуле значения или данные. С помощью ссылок можно использовать в одной формуле данные, находящиеся в разных частях листа, а также использовать значение одной ячейки в нескольких формулах. Вы также можете задавать ссылки на ячейки разных листов одной книги либо на ячейки из других книг. Ссылки на ячейки других книг называются связями или внешними ссылками.
-
Стиль ссылок A1 По умолчанию Excel использует стиль ссылок A1, в котором столбцы обозначаются буквами (от A до XFD, не более 16 384 столбцов), а строки — номерами (от 1 до 1 048 576). Эти буквы и номера называются заголовками строк и столбцов. Для ссылки на ячейку введите букву столбца, и затем — номер строки. Например, ссылка B2 указывает на ячейку, расположенную на пересечении столбца B и строки 2.
| Ячейка или диапазон | Использование |
|---|---|
| Ячейка на пересечении столбца A и строки 10 | A10 |
| Диапазон ячеек: столбец А, строки 10-20. | A10:A20 |
| Диапазон ячеек: строка 15, столбцы B-E | B15:E15 |
| Все ячейки в строке 5 | 5:5 |
| Все ячейки в строках с 5 по 10 | 5:10 |
| Все ячейки в столбце H | H:H |
| Все ячейки в столбцах с H по J | H:J |
| Диапазон ячеек: столбцы А-E, строки 10-20 | A10:E20 |
1. Ссылка на лист «Маркетинг». 2. Ссылка на диапазон ячеек от B1 до B10 3. Восклицательный знак (!) отделяет ссылку на лист от ссылки на диапазон ячеек.
Примечание: Если указанный лист содержит пробелы или числа, необходимо добавить апострофы (‘) до и после имени листа, например =’123′! A1 или =’Январь доход’! A1.
-
Относительные ссылки . Относительная ссылка в формуле, например A1, основана на относительной позиции ячейки, содержащей формулу, и ячейки, на которую указывает ссылка. При изменении позиции ячейки, содержащей формулу, изменяется и ссылка. При копировании или заполнении формулы вдоль строк и вдоль столбцов ссылка автоматически корректируется. По умолчанию в новых формулах используются относительные ссылки. Например, при копировании или заполнении относительной ссылки из ячейки B2 в ячейку B3 она автоматически изменяется с =A1 на =A2. Скопированная формула с относительной ссылкой
- При помощи трехмерных ссылок можно создавать ссылки на ячейки на других листах, определять имена и создавать формулы с использованием следующих функций: СУММ, СРЗНАЧ, СРЗНАЧА, СЧЁТ, СЧЁТЗ, МАКС, МАКСА, МИН, МИНА, ПРОИЗВЕД, СТАНДОТКЛОН.Г, СТАНДОТКЛОН.В, СТАНДОТКЛОНА, СТАНДОТКЛОНПА, ДИСПР, ДИСП.В, ДИСПА и ДИСППА.
- Трехмерные ссылки нельзя использовать в формулах массива.
- Трехмерные ссылки нельзя использовать вместе с оператор пересечения (один пробел), а также в формулах с неявное пересечение.
Что происходит при перемещении, копировании, вставке или удалении листов . Нижеследующие примеры поясняют, какие изменения происходят в трехмерных ссылках при перемещении, копировании, вставке и удалении листов, на которые такие ссылки указывают. В примерах используется формула =СУММ(Лист2:Лист6!A2:A5) для суммирования значений в ячейках с A2 по A5 на листах со второго по шестой.
- Вставка или копирование . Если вставить листы между листами 2 и 6, Microsoft Excel прибавит к сумме содержимое ячеек с A2 по A5 на новых листах.
- Удаление . Если удалить листы между листами 2 и 6, Microsoft Excel не будет использовать их значения в вычислениях.
- Перемещение . Если листы, находящиеся между листом 2 и листом 6, переместить таким образом, чтобы они оказались перед листом 2 или после листа 6, Microsoft Excel вычтет из суммы содержимое ячеек с перемещенных листов.
- Перемещение конечного листа . Если переместить лист 2 или 6 в другое место книги, Microsoft Excel скорректирует сумму с учетом изменения диапазона листов.
- Удаление конечного листа . Если удалить лист 2 или 6, Microsoft Excel скорректирует сумму с учетом изменения диапазона листов.
| Ссылка | Значение |
|---|---|
| R[-2]C | относительная ссылка на ячейку, расположенную на две строки выше в том же столбце |
| R[2]C[2] | Относительная ссылка на ячейку, расположенную на две строки ниже и на два столбца правее |
| R2C2 | Абсолютная ссылка на ячейку, расположенную во второй строке второго столбца |
| R[-1] | Относительная ссылка на строку, расположенную выше текущей ячейки |
| R | Абсолютная ссылка на текущую строку |
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.
Как создать свою функцию в excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Создание пользовательских функций в Excel
Пользовательские функции позволяют разработчикам добавлять новые функции в Excel путем определения этих функций в JavaScript как части надстройки. Пользователи в Excel могут получить доступ к пользовательским функциям так же, как и к любой встроенной функции в Excel, например SUM() .
Пользовательская функция — это общий термин, который является взаимозаменяемым с определяемой пользователем функцией. Оба условия применяются к надстройкам VBA, COM и Office.js. В документации по надстройкам Office термин «настраиваемая функция » используется при обращении к пользовательским функциям, использующим API JavaScript для Office.
Обратите внимание, что настраиваемые функции доступны в Excel на следующих платформах.
- Office для Windows
- Подписка на Microsoft 365
- Розничный бессрочный Office 2016 и более поздних версий
В настоящее время пользовательские функции Excel не поддерживаются в следующих приложениях:
- Office для iPad
- корпоративные бессрочные версии Office 2019 или более ранних версий
Ниже на анимированном изображении показано, как рабочая книга вызывает функцию, созданную вами с помощью JavaScript или TypeScript. В этом примере пользовательская функция =MYFUNCTION.SPHEREVOLUME рассчитывает объем сферы.
Приведенный ниже код определяет пользовательскую функцию =MYFUNCTION.SPHEREVOLUME .
/** * Returns the volume of a sphere. * @customfunction * @param radius */ function sphereVolume(radius) < return Math.pow(radius, 3) * 4 * Math.PI / 3; >Как определена пользовательская функция в коде
Если использовать генератор Yeoman для надстроек Office для создания в Excel проекта надстройки с пользовательскими функциями, он создаст файлы, управляющие вашими функциями и областью задач. Мы сосредоточимся на файлах, которые важны для пользовательских функций.
Файл Формат файла Описание ./src/functions/functions.js
или
./src/functions/functions.tsJavaScript
или
TypeScriptСодержит код, который определяет пользовательские функции. ./src/functions/functions.html HTML Предоставляет со ссылкой на файл JavaScript, который определяет пользовательские функции. ./manifest.xml XML Указывает расположение нескольких файлов, которые используются пользовательскими функциями, например JavaScript, JSON и HTML-файлов. А также среду выполнения, которую должны использовать пользовательские функции, расположение файлов области задач и командных файлов. Генератор Yeoman для надстроек Office предлагает несколько проектов пользовательских функций Excel . Рекомендуется выбрать тип проекта Excel Custom Functions с помощью общей среды выполнения и типа скрипта JavaScript.
Файл скрипта
Файл скрипта (./src/functions/functions.js или ./src/functions/functions.ts) содержит код, определяющий пользовательские функции, и комментарии, определяющие функцию.
Приведенный ниже код определяет пользовательскую функцию add . Примечания кода используются для создания файла метаданных JSON с описанием пользовательской функции для Excel. Обязательный комментарий @customfunction объявлен первым, чтобы указать, что это пользовательская функция. Затем объявляются еще два параметра: first и second , за которыми следуют их свойства description . Наконец, дается описание returns . Дополнительные сведения о том, какие комментарии являются обязательными для вашей пользовательской функции, см. в статье Автоматическое создание метаданных JSON для пользовательских функций.
/** * Adds two numbers. * @customfunction * @param first First number. * @param second Second number. * @returns The sum of the two numbers. */ function add(first, second)
Файл манифеста
Файл манифеста XML для надстройки, определяющий пользовательские функции (./manifest.xml в проекте, созданном генератором Yeoman для надстроек Office), выполняет несколько задач.
- Определяет пространство имен для пользовательских функций. Пространство имен добавляется к пользовательским функциям, чтобы клиенты могли определить ваши функции в рамках надстройки.
- Использует и , уникальные для манифеста пользовательских функций. Эти элементы содержат сведения о расположении JavaScript, JSON и HTML-файлов.
- Указывает, какую среду выполнения использовать для пользовательской функции. Рекомендуется всегда использовать общую среду выполнения, если нет особой потребности в использовании другой среды, так как общая позволяет делиться данными между функциями и областью задач.
Полный рабочий манифест из примера надстройки можно просмотреть в одном из репозиториев Github для примеров надстроек Office.
Если вы будете тестировать надстройку в нескольких средах (например, в среде разработки, в промежуточной среде, в демонстрационной среде и т. п.), рекомендуем использовать отдельный XML-файл манифеста для каждой среды. В каждом файле манифеста можно:
- Указать URL-адреса, соответствующие среде.
- Настроить значения метаданных, такие как DisplayName , и метки в Resources для указания среды, чтобы конечные пользователи могли определить соответствующую среду надстройки, загруженной без публикации.
- Настроить пользовательские функции namespace , чтобы указать среду, если ваша надстройка определяет пользовательские функции.
Соблюдение этих рекомендаций поможет вам упорядочить процесс тестирования и избежать проблем, которые могли бы возникнуть при одновременной загрузке вашей надстройки для нескольких сред.
Совместное редактирование
Excel для Интернета и Windows, подключенный к подписке Microsoft 365, дает конечным пользователям возможность совместно редактировать данные в Excel. Если книга пользователя использует пользовательскую функцию, то коллеге этого пользователя по совместному редактированию будет предложено загрузить надстройку с соответствующими пользовательскими функциями. После загрузки этой надстройки обоими пользователями эта пользовательская функция будет предоставлять результаты обоим пользователям с помощью совместного редактирования.
Дополнительные сведения о совместном редактировании см. в статье О совместном редактировании в Excel.
Дальнейшие действия
Хотите попробовать пользовательские функции? Ознакомьтесь с простым кратким руководством по началу работы с пользовательскими функциями или с более глубоким руководством по пользовательским функциям, если вы этого еще не сделали.
Еще одно простое средство ознакомления с пользовательскими функциями — Script Lab, надстройка, в которой можно экспериментировать с пользовательскими функциями прямо в Excel. Вы можете попробовать создать собственные пользовательские функции или поиграть с готовыми примерами.
См. также
- Сведения о программе для разработчиков Microsoft 365
- Наборы обязательных элементов пользовательских функций
- Правила именования пользовательских функций
- Создание пользовательских функций, совместимых с функциями XLL, определенными пользователями
- Настройка надстройки Office для использования общей среды выполнения
- Среды выполнения в надстройках Office
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Примеры как создать пользовательскую функцию в Excel
В Excel содержится множество встроенных функций, которые могут быть использованы для инженерных, статистических, финансовых, аналитических и прочих расчетов. Иногда условия поставленных задач требуют более гибкого инструмента для поиска решения, тогда на помощь приходят макросы и пользовательские функции.
Пример создания своей пользовательской функции в Excel
Подобно макросам, пользовательские функции могут быть созданы с использованием языка VBA. Для реализации данной задачи необходимо выполнить следующие действия:
- Открыть редактор языка VBA с помощью комбинации клавиш ALT+F11.
- В открывшемся окне выбрать пункт Insert и подпункт Module, как показано на рисунке:

- Новый модуль будет создан автоматически, при этом в основной части окна редактора появится окно для ввода кода:

- При необходимости можно изменить название модуля.
- В отличие от макросов, код которых должен находиться между операторами Sub и End Sub, пользовательские функции обозначают операторами Function и End Function соответственно. В состав пользовательской функции входят название (произвольное имя, отражающее ее суть), список параметров (аргументов) с объявлением их типов, если они требуются (некоторые могут не принимать аргументов), тип возвращаемого значения, тело функции (код, отражающий логику ее работы), а также оператор End Function. Пример простой пользовательской функции, возвращающей названия дня недели в зависимости от указанного номера, представлен на рисунке ниже:

- После ввода представленного выше кода необходимо нажать комбинацию клавиш Ctrl+S или специальный значок в левом верхнем углу редактора кода для сохранения.
- Чтобы воспользоваться созданной функцией, необходимо вернуться к табличному редактору Excel, установить курсор в любую ячейку и ввести название пользовательской функции после символа «=»:

Встроенные функции Excel содержат пояснения как возвращаемого результата, так и аргументов, которые они принимают. Это можно увидеть на примере любой функции нажав комбинацию горячих клавиш SHIFT+F3. Но наша функция пока еще не имеет формы.
Чтобы задокументировать пользовательскую функцию, необходимо выполнить следующие действия:
- Создайте новый макрос (нажмите комбинацию клавиш Alt+F8), в появившемся окне введите произвольное название нового макроса, нажмите кнопку Создать:

- В результате будет создан новый модуль с заготовкой, ограниченной операторами Sub и End Sub.

- Введите код, как показано на рисунке ниже, указав требуемое количество переменных (в зависимости от числа аргументов пользовательской функции):

- В качестве «Macro» должна быть передана текстовая строка с названием пользовательской функции, в качестве «Description» — переменная типа String с текстом описания возвращаемого значения, в качестве «ArgumentDescriptions» — массив переменных типа String с текстами описаний аргументов пользовательской функции.
- Для создания описания пользовательской функции достаточно один раз выполнить созданный выше модуль. Теперь при вызове пользовательской функции (или SHIFT+F3) отображается описание возвращаемого результата и переменной:

Описания функций создавать не обязательно. Они необходимы в случаях, если пользовательские функции будут часто использоваться другими пользователями.
Примеры использования пользовательских функций, которых нет в Excel
Пример 1. Рассчитать сумму отпускных для каждого работника, проработавшего на предприятии не менее 12 месяцев, на основе суммы общей заработной платы и числа выходных дней в году.
Вид исходной таблицы данных:

Каждому работнику полагается 24 выходных дня с выплатой S=N*24/(365-n), где:
- N – суммарная зарплата за год;
- n – число праздничных дней в году.
Создадим пользовательскую функцию для расчета на основе данной формулы:

Public Function Otpusknye(summZp As Long , holidays As Long ) As Long
If IsNumeric(holidays) = False Or IsNumeric(summZp) = False Then
Otpusknye = «Введены нечисловые данные»
Exit Function
ElseIf holidays Otpusknye = «Отрицательное число или 0»
Exit Function
Else
Otpusknye = summZp * 24 / (365 — holidays)
End If
End FunctionСохраним функцию и выполним расчет с ее использованием:
Растянем формулу на остальные ячейки с целью получения результатов для остальных работников:

Калькулятор расчета калорий в Excel
Пример 2. Рассчитать суточную норму калорий для участников программы похудения, среди которых есть как женщины, так и мужчины определенного возраста с известными показателями роста и веса.
Вид исходной таблицы данных:

Для расчета используем формулу Миффлина — Сан Жеора, которую запишем в коде пользовательской функции с учетом пола участника. Код примера:
Public Function CaloriesPerDay(sex As String , age As Integer , weight As Integer , height As Integer ) As Integer
If sex = «женский» Then
CaloriesPerDay = 10 * weight + 6.25 * height — 5 * age — 161
ElseIf sex = «мужской» Then
CaloriesPerDay = 10 * weight + 6.25 * height — 5 * age + 5
Else : CaloriesPerDay = 0
End If
End FunctionПроверки корректности введенных данных упущены для упрощения кода. Если пол не определен, функция вернет результат 0 (нуль).
Пример расчета для первого участника:
В результате использования автозаполнения получим следующие результаты:

Пользовательская функция для решения квадратных уравнений в Excel
Пример 3. Создать функцию, которая возвращает результаты решения квадратных уравнений для указанных в ячейках коэффициентах a, b и c уравнения типа ax2+bx+c=0.
Вид исходной таблицы:

Для решения создадим следующую пользовательскую функцию:

Найдем корни первого уравнения:
Выполним расчеты для остальных уравнений. Полученные результаты:

Мы создали свою пользовательскую функцию для расчета квадратных уравнений, которой раньше не было в Excel по умолчанию.
- Создать таблицу
- Форматирование
- Функции Excel
- Формулы и диапазоны
- Фильтр и сортировка
- Диаграммы и графики
- Сводные таблицы
- Печать документов
- Базы данных и XML
- Возможности Excel
- Настройки параметры
- Уроки Excel
- Макросы VBA
- Скачать примеры