Как в эксель написать формулу: Как поставить формулу в эксель
Содержание
Напишите формулу в Excel — voxt.ru
Напишите основные формулы в Excel
Формулы являются неотъемлемой частью Excel, и, как новичок в Excel, человек не понимает важности формул в Excel. Однако все новички знают, что есть множество встроенных формул, но не знают, как их применять.
В этой статье мы покажем вам, как писать формулы в Excel и как их динамически изменять, когда значения ячеек, на которые есть ссылки, изменяются автоматически.
Как писать / вставлять формулы в Excel?
Вы можете скачать этот шаблон Excel для записи формул здесь — Шаблон для записи формул в Excel
Чтобы написать формулу в excel, первое, что вам нужно сделать, это ввести знак равенства в ячейку, где нам нужно ввести формулу. Итак, формула всегда начинается со знака равенства (=).
Пример # 1
Например, посмотрите на приведенные ниже данные на листе Excel.
У меня есть два числа в ячейках A1 и A2 соответственно. Если мы хотим сложить эти два числа в ячейке A3, нам нужно сначала открыть знак равенства в ячейке A3.
Введите числа как 525 + 800.
Нажмите клавишу ввода, чтобы получить результат введенного уравнения формулы.
Строка формул показывает формулу, а не результат формулы.
Как вы можете видеть выше, мы получили результат 1325 как сумму чисел 525 и 800. В строке формул мы можем увидеть, как была применена формула = 525 + 800.
Теперь я изменю номера ячеек A1 и A2 на 50 и 80 соответственно.
В ячейке результата A3 отображается только результат старой формулы. Здесь нам нужно создать формулы динамических ссылок на ячейки.
Вместо ввода двух номеров ячеек укажите ссылку на ячейку только для формулы.
Нажмите клавишу ввода, чтобы получить результат этой формулы.
В строке формул мы можем видеть формулу как A1 + A2, а не числа ячеек A1 и A2. Теперь измените номера любой из ячеек, и в ячейке A3 это автоматически повлияет на результат.
Я изменил номер ячейки A1 с 50 на 100, и поскольку ячейка A3 имеет ссылку на ячейки A1 и A2, в результате ячейка A3 автоматически изменилась.
Пример # 2
Теперь у меня есть номера в соседних столбцах.
У меня есть числа в еще четырех столбцах, и нам нужно получить сумму этих чисел, как мы это делали для ячеек A1 и A3.
Именно здесь реальная сила формул, содержащих ссылки на ячейки, имеет решающее значение для придания формуле динамичности. Скопируйте ячейку A3, в которой уже применяется формула A1 + A2, и вставьте в следующую ячейку, то есть B3.
Вау!!! Посмотрите на результат в ячейке B3, и в строке формул отображается формула B1 + B2 вместо A1 + A2.
Когда мы копируем и вставляем ячейку A3, которая является ячейкой формулы, и переместили один столбец вправо, но в той же строке, мы вставили формулу. Поскольку мы переместили один столбец вправо в той же ссылке на столбец строки или значении заголовка, «А«Был изменен на»B,”, Но номера строк 1 и 2 остаются прежними.
Например, скопируйте и вставьте формулу в другие ячейки, чтобы получить сумму во всех ячейках.
Как использовать встроенные функции Excel?
Пример # 1 — Функция СУММ
У нас есть множество встроенных функций в Excel в зависимости от требований и ситуаций, в которых мы можем их использовать. Например, посмотрите на данные ниже в Excel.
У нас есть числа от А1 до Е5 диапазона ячеек. В ячейке B7 нам нужна общая сумма этих чисел. Добавление отдельной ссылки на ячейку и ввод каждой ссылки на ячейку по отдельности занимает много времени, поэтому, если поставить знак равенства, открыть функцию СУММ в Excel.
Выберите диапазон ячеек от A1 до E5 и закройте скобку.
Hit вводит ключ, чтобы получить сумму чисел от A1 до E5.
Вау!!! Всего за доли секунды мы получили общее количество чисел, и в строке формул мы можем увидеть формулу как = СУММ (A1: E5)
Пример # 2 — Функция AVERAGE
Предположим, у вас есть учащиеся, набравшие баллы по каждому предмету, и вам нужно найти средний балл учащегося, можно найти средний балл за доли секунды. Например, посмотрите на данные ниже.
Сначала откройте функцию среднего значения в ячейке h3.
Выберите диапазон ссылок на ячейки от B2 до G2, потому что для студента «Амит» все баллы по предметам находятся только в этом диапазоне.
Нажмите клавишу ввода, чтобы получить средний ученик «Амит».
Таким образом, средний балл студента «Амит» — 79.
Теперь перетащите ячейку формулы h3 в ячейки ниже, чтобы получить среднее значение других учащихся.
Что нужно помнить о вставке формулы в Excel
- Формула всегда должна начинаться со знака равенства. Вы также можете начать со знака ПЛЮС или МИНУС, но это не рекомендуется.
- Выполняя расчеты, нужно помнить об основном математическом правиле БОДМЫ.
- Всегда используйте встроенные функции в Excel.
УЗНАТЬ БОЛЬШЕ >>
Post Views: 276
Похожие записи
Прокрутить вверх
Как написать формулы с помощью макросов в Excel подробное руководство
Итог: ознакомьтесь с 3 советами по написанию и созданию формул в макросах VBA с помощью этой статьи и видео.
Уровень мастерства: Средний
Написание формул может быть одной из самых трудоемких частей
вашей еженедельной или ежемесячной задачи Excel. Если вы работаете над
автоматизацией этого процесса с помощью макроса, вы можете попросить VBA
написать формулу и ввести ее в ячейки.
Поначалу написание формул в VBA может быть немного сложнее,
поэтому вот три совета, которые помогут сэкономить время и упростить процесс.
Совет № 1: Свойство Formula
Свойство Formula является членом объекта Range в VBA. Мы можем использовать его для установки / создания формулы для отдельной ячейки или диапазона ячеек.
Есть несколько требований к значению формулы, которые мы устанавливаем с помощью свойства Formula:
- Формула представляет собой строку текста, заключенную в кавычки. Значение формулы должно начинаться и заканчиваться кавычками.
- Строка формулы должна начинаться со знака равенства = после первой кавычки.
Вот простой пример формулы в макросе.
Sub Formula_Property() ' Формула представляет собой строку текста, заключенную в кавычки ' Начинается со знака = Range("B10").Formula = "=SUM(B4:B9)" End Sub
Свойство Formula также можно использовать для чтения существующей формулы в ячейке.
Совет № 2: Используйте Macro Recorder
Если ваши формулы более сложные или содержат специальные
символы, их будет сложнее написать в VBA. К счастью, мы можем использовать
рекордер макросов, чтобы создать код для нас.
Вот шаги по созданию кода свойства формулы с помощью средства записи макросов.
- Включите средство записи макросов (вкладка «Разработчик»> «Запись макроса»)
- Введите формулу или отредактируйте существующую формулу.
- Нажмите Enter, чтобы ввести формулу.
- Код создается в макросе.
Если ваша формула содержит кавычки или символы амперсанда, макрос записи будет учитывать это. Он создает все подстроки и правильно упаковывает все в кавычки. Вот пример.
Sub Macro10() ' Используйте средство записи макросов для создания кода для сложных формул с ' специальны символы и относительные ссылки ActiveCell.FormulaR1C1 = "=""Total Sales: "" & TEXT(R[-5]C,""$#,###"")" End Sub
Совет № 3: Нотация формулы стиля R1C1
Если вы используете средство записи макросов для формул, вы
заметите, что он создает код со свойством FormulaR1C1.
Нотация стиля R1C1 позволяет нам создавать как относительные (A1), абсолютные ($A$1), так и смешанные ($A1, A$1) ссылки в нашем макрокоде.
R1C1 обозначает строки и столбцы.
Относительные ссылки
Для относительных ссылок мы указываем количество строк и
столбцов, которые мы хотим сместить от ячейки, в которой находится формула.
Количество строк и столбцов указывается в квадратных скобках.
Следующее создаст ссылку на ячейку, которая на 3 строки выше
и на 2 строки справа от ячейки, содержащей формулу.
R[-3]C[2]
Отрицательные числа идут вверх по строкам и столбцам слева.
Положительные числа идут вниз по строкам и столбцам справа.
Абсолютные ссылки
Мы также можем использовать нотацию R1C1 для абсолютных ссылок. Обычно это выглядит как $A$2.
Для абсолютных ссылок мы НЕ используем квадратные скобки. Следующее создаст прямую ссылку на ячейку $A$2, строка 2, столбец 1
При создании смешанных ссылок относительный номер строки или
столбца будет зависеть от того, в какой ячейке находится формула.
Проще всего использовать макро-рекордер, чтобы понять это.
Свойство FormulaR1C1 и свойство формулы
Свойство FormulaR1C1 считывает нотацию R1C1 и создает
правильные ссылки в ячейках. Если вы используете обычное свойство Formula с
нотацией R1C1, то VBA попытается вставить эти буквы в формулу, что, вероятно,
приведет к ошибке формулы.
Поэтому используйте свойство Formula, если ваш код содержит
ссылки на ячейки ($ A $ 1), свойство FormulaR1C1, когда вам нужны относительные
ссылки, которые применяются к нескольким ячейкам или зависят от того, где
введена формула.
Если ваша электронная таблица изменяется в зависимости от
условий вне вашего контроля, таких как новые столбцы или строки данных,
импортируемые из источника данных, то относительные ссылки и нотация стиля
R1C1, вероятно, будут наилучшими.
Я надеюсь, что эти советы помогут. Пожалуйста, оставьте
комментарий ниже с вопросами или предложениями.
Работа с формулами — XlsxWriter Documentation
Обычно формулу в Excel можно использовать непосредственно в
write_formula()
метод:
worksheet.write_formula('A1', '=10*B1 + C1')
Однако есть несколько потенциальных проблем и различий, которые пользователь должен
быть осведомленным. Они объясняются в следующих разделах.
Функции и синтаксис Excel, не относящиеся к США
Excel сохраняет формулы в формате английской версии США, независимо от
языка или локали версии Excel для конечного пользователя. Поэтому все
имена функций формулы, написанные с помощью XlsxWriter, должны быть на английском языке:
worksheet.write_formula('A1', '=СУММ(1, 2, 3)') # ОК worksheet.write_formula('A2', '=SOMME(1, 2, 3)') # Французский. Ошибка при загрузке.
Кроме того, формулы должны быть написаны с использованием оператора разделителя/диапазона в американском стиле.
это запятая (не точка с запятой). Поэтому формула с несколькими значениями
должен быть записан следующим образом:
worksheet.write_formula('A1', '=СУММ(1, 2, 3)') # ОК worksheet.write_formula('A2', '=СУММ(1; 2; 3)') # Точка с запятой. Ошибка при загрузке.
Если у вас неанглоязычная версия Excel, вы можете использовать следующие
многоязычный переводчик формул
чтобы помочь вам преобразовать формулу. Он также может заменять точки с запятой запятыми.
Результаты формулы
XlsxWriter не вычисляет результат формулы, а вместо этого сохраняет
значение 0 в качестве результата формулы. Затем он устанавливает глобальный флаг в файле XLSX на
сказать, что все формулы и функции должны быть пересчитаны, когда файл
открыт.
Этот метод рекомендуется в документации Excel, и в целом он
отлично работает с табличными приложениями. Однако приложения, которые не
иметь средство для расчета формул будет отображать только 0
полученные результаты. Примерами таких приложений являются Excel Viewer, PDF Converters и
некоторые приложения для мобильных устройств.
При необходимости также можно указать расчетный результат
формула с использованием необязательного параметра value
для write_formula()
:
worksheet.write_formula('A1', '=2+2', num_format, 4)
Параметр value
может быть числом, строкой, логическим значением или одним из
следующие коды ошибок Excel:
#DIV/0! #Н/Д #ИМЯ? #НУЛЕВОЙ! #ЧИСЛО! #ССЫЛКА! #ЦЕННОСТЬ!
Также можно указать вычисленный результат формулы массива
создано с write_array_formula()
:
# Укажите результат для одного диапазона ячеек. worksheet.write_array_formula('A1:A1', '{=СУММ(B1:C1*B2:C2)}', cell_format, 2005)
Однако при использовании этого параметра в левый верхний угол записывается только одно значение.
ячейка в результирующем массиве. Для формулы массива с несколькими ячейками, где результаты
требуется, другие значения результата можно указать с помощью write_number()
для записи в соответствующую ячейку:
# Укажите результаты для диапазона из нескольких ячеек. worksheet.write_array_formula('A1:A3', '{=TREND(C1:C3,B1:B3)}', cell_format, 15) рабочий лист.write_number('A2', 12, формат_ячейки) рабочий лист.write_number('A3', 14, формат_ячейки)
Поддержка динамических массивов
В Excel представлена концепция «динамических массивов» и новые функции, использующие
их в Office 365. Новые функции:
-
ФИЛЬТР()
-
УНИКАЛЬНЫЙ()
-
СОРТИРОВКА()
-
СОРТИРОВАТЬ()
-
XLOOKUP()
-
ПОИСКПОЗ()
-
СЛУЧАЙНЫЙ ()
-
ПОСЛЕДОВАТЕЛЬНОСТЬ()
В динамических массивах также были добавлены следующие специальные функции:
-
SINGLE()
— Объясняется ниже в Динамические массивы — Оператор неявного пересечения «@». -
ANCHORARRAY()
— Объясняется ниже в Динамические массивы — Оператор пропущенного диапазона «#». -
LAMBDA()
иLET()
— поясняется ниже в функции Excel 365 LAMBDA().
Динамические массивы — это диапазоны возвращаемых значений, размер которых может меняться в зависимости от
результаты, достижения. Например, такая функция, как ФИЛЬТР()
возвращает массив
значения, которые могут различаться по размеру в зависимости от результатов фильтрации. Это
показано во фрагменте ниже из Примера: Формулы динамического массива:
worksheet1.write('F2', '=FILTER(A1:D17,C1:C17=K2)')
Это дает результаты, показанные на изображении ниже. Динамический диапазон здесь
«F2:I5», но может отличаться в зависимости от критериев фильтра.
Также можно получить поведение динамического массива в старых версиях Excel.
функции. Например, функция Excel =LEN(A1)
относится к одному
ячейка и возвращает одно значение, но также возможно применить его к диапазону
ячеек и вернуть диапазон значений, используя формулу массива, например
{=ДЛСТР(A1:A3)}
. Этот тип «статического» поведения массива называется CSE.
Формула (Ctrl+Shift+Enter). С введением динамических массивов в Excel
365 теперь вы можете записать эту функцию как =LEN(A1:A3)
и получить динамический диапазон
возвращаемых значений. В XlsxWriter вы можете использовать write_array_formula()
метод рабочего листа для получения диапазона статических/CSE и
write_dynamic_array_formula()
для получения динамического диапазона. Например:
worksheet.write_dynamic_array_formula('B1:B3', '=LEN(A1:A3)')
Что дает следующий результат:
Разница между двумя типами функций массива объясняется в
Документация Microsoft по формулам динамического массива и устаревшему массиву CSE
формулы. Примечание
использование слова «наследие» здесь. Это и сама документация
четкое указание на будущую важность динамических массивов в Excel.
Для более широкого и общего ознакомления с динамическими массивами см. следующее:
Формулы динамического массива в Excel.
Динамические массивы — оператор неявного пересечения «@»
Оператор неявного пересечения «@» используется Excel 365 для обозначения
позиция в формуле, которая неявно возвращает одно значение, когда диапазон
или массив может быть возвращен.
Мы можем увидеть, как этот оператор работает на практике, рассмотрев формулу, которую мы
использовано в последнем разделе: =ДЛСТР(A1:A3)
. В версиях Excel без поддержки
для динамических массивов, то есть до Excel 365, эта формула работала бы на
одно значение из входного диапазона и вернуть одно значение, например:
Здесь происходит неявное преобразование диапазона входных значений «A1:A3» в
одно значение «A1». Поскольку это было поведением по умолчанию в старых версиях
В Excel это преобразование никак не выделяется. Но если вы откроете тот же
файл в Excel 365 будет выглядеть следующим образом:
Результат формулы тот же (это важно отметить) и по-прежнему
работает с одним значением и возвращает его. Однако формула теперь содержит
Оператор «@», чтобы показать, что он неявно использует одно значение из заданного
диапазон.
Наконец, если вы ввели эту формулу в Excel 365 или с
write_dynamic_array_formula()
в XlsxWriter, он будет работать на
весь диапазон и вернуть массив значений:
Если вы столкнулись с неявным оператором пересечения «@» для первого
время, то это, вероятно, с точки зрения «почему Excel/XlsxWriter
вставляя @s в мои формулы». С практической точки зрения, если вы столкнетесь с этим оператором,
и вы не предполагаете, что это будет там, то вам, вероятно, следует написать
формула как CSE или функция динамического массива с использованием write_array_formula()
или write_dynamic_array_formula()
(см. предыдущий раздел о
поддержка динамических массивов).
Полное объяснение этого оператора показано в документации Microsoft на
Неявный оператор пересечения: @.
Важно отметить, что оператор «@» не сохраняется вместе с
формула. Он просто отображается Excel 365 при чтении «устаревшего»
формулы. Однако при необходимости его можно записать в виде формулы
используя ОДИНОЧНЫЙ()
или _xlfn.SINGLE()
. Необычные случаи, когда это может быть
необходимые показаны в связанном документе в предыдущем абзаце.
Динамические массивы — оператор расширенного диапазона «#»
В разделе выше о поддержке динамических массивов мы видели, что динамический
формулы массива могут возвращать диапазоны результатов переменного размера. Excel
документация называет это «пролитым» диапазоном/массивом из-за того, что
результаты разливаются на необходимое количество ячеек. Это объясняется в
Документация Microsoft по формулам динамического массива и поведению массива с разбросом.
Так как разбросанный диапазон может быть разным по размеру, новый оператор должен ссылаться
к диапазону. Этот оператор является оператором Spilled range.
и он представлен знаком «#». Например, диапазон F2#
на изображении
ниже используется для ссылки на динамический массив, возвращаемый UNIQUE()
в ячейке
Ф2
. Этот пример взят из программы XlsxWriter. Пример: формулы динамического массива.
К сожалению, Excel не хранит такую формулу, и в XlsxWriter вы
нужно использовать явную функцию ANCHORARRAY()
для обозначения разлитого
диапазон. Пример на изображении выше был создан с использованием следующего:
worksheet9.write('J2', '=COUNTA(ANCHORARRAY(F2))') # То же, что и '=COUNTA(F2#)' в Excel.
Функция Excel 365 LAMBDA()
Примечание: на момент написания функция LAMBDA() в Excel только
доступно для пользователей Excel 365, подписавшихся на обновления бета-канала.
В бета-версиях Excel 365 появился новый мощный
функция/функция под названием ЛЯМБДА()
. Это похоже на лямбду
функция в Python (и других языках).
Рассмотрим следующий пример Excel, который преобразует переменную temp
из градусов Фаренгейта в градусы Цельсия:
LAMBDA(temp, (5/9) * (temp-32))
Это можно вызвать в Excel с аргументом:
=LAMBDA(temp, (5/9) * (temp-32))(212)
Или назначается определенному имени и вызывается как функция, определяемая пользователем:
=ToCelsius(212)
Это похоже на этот пример в Python:
>>> to_celsius = температура лямбда: (5. 0/9.0) * (temp-32) >>> to_celsius(212) 100,0
Программа XlsxWriter, копирующая Excel, показана в примере: функция Excel 365 LAMBDA().
Формула записывается следующим образом:
worksheet.write('A2', '=LAMBDA(_xlpm.temp, (5/9) * (_xlpm.temp-32))(32)')
Обратите внимание, что параметры в функции LAMBDA()
должны иметь «_xlpm».
префикс для совместимости с тем, как формулы хранятся в Excel. Эти
префиксы не будут отображаться в формуле, как показано на рисунке.
Функция LET()
часто используется в сочетании с LAMBDA()
для назначения
имена к результатам расчета.
В Excel 2010 и более поздних версиях добавлены формулы
В Excel 2010 и более поздних версиях добавлены функции, которые не были определены в исходной версии
спецификация файла. Microsoft называет эти функции будущими .
функции. Примеры этих функций: ACOT
, CHISQ.DIST.RT
,
ДОВЕРИТЕЛЬНОСТЬ. НОРМ
, СТАНДОТКЛОН.P
, СТАНДОТКЛОН.С
и РАБДЕНЬ.МЕЖДУНАРОДНЫЙ
.
При записи с использованием write_formula()
эти функции должны быть полностью
квалифицирован с _xlfn.
(или другой) префикс, как показано в списке
ниже. Например:
worksheet.write_formula('A1', '=_xlfn.STDEV.S(B1:B10)')
Эти функции будут отображаться в Excel без префикса:
Кроме того, вы можете включить параметр use_future_functions
в
Рабочая тетрадь()
, который добавит префикс по мере необходимости:
workbook = Workbook('write_formula.xlsx', {'use_future_functions': True}) # ... worksheet.write_formula('A1', '=STDEV.S(B1:B10)')
Если формула уже содержит _xlfn. префикс
для любой функции, то
формула будет проигнорирована и больше не будет расширена.
Примечание
Включение параметра use_future_functions добавляет служебные данные ко всем формулам
обработка в XlsxWriter. Если в вашем приложении много формул или
чувствителен к производительности, тогда лучше использовать явный _xlfn. префикс
вместо.
Следующий список взят из
Документация по расширениям MS XLSX по будущим функциям.
-
_xlfn.ACOT
-
_xlfn.ACOTH
-
_xlfn.АГРЕГАТ
-
_xlfn.АРАБСКИЙ
-
_xlfn.BASE
-
_xlfn.БЕТА.РАСП
-
_xlfn.БЕТА.ИНВ
-
_xlfn.БИНОМ.РАСП
-
_xlfn.БИНОМ.РАСП.ДИАПАЗОН
-
_xlfn.БИНОМ.ИНВ
-
_xlfn.BITAND
-
_xlfn.BITLSHIFT
-
_xlfn.BITOR
-
_xlfn.BITRSHIFT
-
_xlfn.BITXOR
-
_xlfn.CEILING.MATH
-
_xlfn.ПОТОЛОК.ТОЧНЫЙ
-
_xlfn.CHISQ.DIST
-
_xlfn. CHISQ.DIST.RT
-
_xlfn.CHISQ.INV
-
_xlfn.CHISQ.INV.RT
-
_xlfn.CHISQ.ТЕСТ
-
_xlfn.COMBINA
-
_xlfn.CONCAT
-
_xlfn.ДОВЕРИТЕЛЬНАЯ НОРМА
-
_xlfn.ДОВЕРИЕ.T
-
_xlfn.COT
-
_xlfn.COTH
-
_xlfn.COVARIANCE.P
-
_xlfn.COVARIANCE.S
-
_xlfn.CSC
-
_xlfn.CSCH
-
_xlfn.ДНЕЙ
-
_xlfn.ДЕСЯТИЧНОЕ
-
ECMA.ПОТОЛОК
-
_xlfn.ERF.PRECISE
-
_xlfn.ERFC.ТОЧНЫЙ
-
_xlfn.ЭКСПОН.РАСП
-
_xlfn.F.DIST
-
_xlfn.F.DIST.RT
-
_xlfn.F.INV
-
_xlfn.F.INV.RT
-
_xlfn. F.ТЕСТ
-
_xlfn.FILTERXML
-
_xlfn.FLOOR.MATH
-
_xlfn.ПОЛ.ТОЧНЫЙ
-
_xlfn.ПРОГНОЗ.ETS
-
_xlfn.ПРОГНОЗ.ETS.CONFINT
-
_xlfn.ПРОГНОЗ.ETS.СЕЗОННОСТЬ
-
_xlfn.ПРОГНОЗ.ETS.СТАТ
-
_xlfn.ПРОГНОЗ.ЛИНЕЙНЫЙ
-
_xlfn.ФОРМУЛАТЕКСТ
-
_xlfn.ГАММА
-
_xlfn.ГАММА.РАСП
-
_xlfn.ГАММА.ОБР
-
_xlfn.GAMMALN.PRECISE
-
_xlfn.ГАУСС
-
_xlfn.HYPGEOM.DIST
-
_xlfn.IFNA
-
_xlfn.IFS
-
_xlfn.IMCOSH
-
_xlfn.ИМКОТ
-
_xlfn.IMSCC
-
_xlfn.IMCSCH
-
_xlfn.IMSEC
-
_xlfn. IMSECH
-
_xlfn.IMSINH
-
_xlfn.ИМТАН
-
_xlfn.ИСФОРМУЛА
-
ИЗО.ПОТОЛОК
-
_xlfn.ISOWWEEKNUM
-
_xlfn.ЛОГНОРМ.РАСП
-
_xlfn.LOGNORM.INV
-
_xlfn.MAXIFS
-
_xlfn.МИНИФС
-
_xlfn.MODE.MULT
-
_xlfn.MODE.SNGL
-
_xlfn.МУНИТ
-
_xlfn.НЕГБИНОМ.РАСП
-
ЧИСТРАБДНИ.МЕЖДУНАРОДНЫЙ
-
_xlfn.НОРМ.РАСП
-
_xlfn.НОРМ.ИНВ
-
_xlfn.НОРМ.СТ.РАСП
-
_xlfn.НОРМ.С.ИНВ
-
_xlfn.ЧИСЛОЗНАЧЕНИЕ
-
_xlfn.PDURATION
-
_xlfn.ПРОЦЕНТИЛЬ.ИСКЛ
-
_xlfn.ПРОЦЕНТИЛЬ.ВКЛ
-
_xlfn. PERCENTRANK.EXC
-
_xlfn.PERCENTRANK.INC
-
_xlfn.ПЕРМУТАЦИЯA
-
_xlfn.PHI
-
_xlfn.ПУАССОН.РАСП
-
_xlfn.КВАРТИЛЬ.ИСКЛ
-
_xlfn.КВАРТИЛЬ.ВКЛ
-
_xlfn.СТРОКА ЗАПРОСА
-
_xlfn.RANK.AVG
-
_xlfn.RANK.EQ
-
_xlfn.RRI
-
_xlfn.SEC
_xlfn.SECH
-
_xlfn.ЛИСТ
-
_xlfn.ЛИСТЫ
-
_xlfn.SKEW.P
-
_xlfn.STDEV.P
-
_xlfn.STDEV.S
-
_xlfn.ПЕРЕКЛЮЧАТЕЛЬ
-
_xlfn.T.DIST
-
_xlfn.T.DIST.2T
-
_xlfn.T.DIST.RT
-
_xlfn.T.INV
-
_xlfn.T.INV.2T
-
_xlfn. Т.ТЕСТ
-
_xlfn.TEXTJOIN
-
_xlfn.UNICHAR
-
_xlfn.UNICODE
-
_xlfn.VAR.P
-
_xlfn.VAR.S
-
_xlfn.ВЕБ-СЕРВИС
-
_xlfn.WEIBULL.DIST
-
РАБДЕНЬ.МЕЖДУНАРОДНЫЙ
-
_xlfn.XOR
-
_xlfn.Z.ТЕСТ
Функции динамического массива, показанные в разделе поддержки динамического массива
выше также будущие функции:
-
_xlfn.UNIQUE
-
_xlfn.XMATCH
-
_xlfn.XLOOKUP
-
_xlfn.SORTBY
-
_xlfn._xlws.СОРТ
-
_xlfn._xlws.ФИЛЬТР
-
_xlfn.RANDARRAY
-
_xlfn.ПОСЛЕДОВАТЕЛЬНОСТЬ
-
_xlfn.ANCHORARRAY
-
_xlfn.ОДИНАРНЫЙ
-
_xlfn. LAMBDA
Однако, поскольку эти функции являются частью новой мощной функции Excel,
и, вероятно, очень важны для конечных пользователей, они автоматически конвертируются
от их более короткой версии к явной версии будущей функции с помощью
XlsxWriter, даже без вариант use_future_function
. Если вам нужно
отменить автоматическое преобразование, вы можете использовать явные версии с
префиксы, показанные выше.
Использование таблиц в формулах
Таблицы рабочего листа можно добавлять с помощью XlsxWriter с помощью add_table()
метод:
worksheet.add_table('B3:F7', {параметры})
По умолчанию таблицы называются Table1
, Table2
и т.д., в порядке
они добавлены. Однако он также может быть установлен пользователем с помощью имя
параметр:
worksheet.add_table('B3:F7', {'имя': 'SalesData'})
При использовании в формуле имени таблицы, например TableX
, следует ссылаться на
как TableX[]
(как список Python):
worksheet. write_formula('A5', '=VLOOKUP("Продажи", Table1[], 2, FALSE')
Работа с ошибками в формулах
Если в синтаксисе формулы есть ошибка, она обычно отображается в
Excel как #ИМЯ?
. В качестве альтернативы вы можете получить предупреждение от Excel, когда
файл загружен. Если вы столкнулись с такой ошибкой, вы можете отладить ее как
следует:
- Убедитесь, что формула действительна в Excel, скопировав и вставив ее в
клетка. Обратите внимание, что это следует делать в Excel, а не в других приложениях, таких как
OpenOffice или LibreOffice, так как они могут иметь немного другой синтаксис. - Убедитесь, что в формуле используются разделители-запятые вместо точек с запятой, см.
Функции и синтаксис Excel не для США выше. - Убедитесь, что формула на английском языке, см. раздел Функции и синтаксис Excel для неамериканских стран выше.
- Убедитесь, что формула не содержит будущей функции Excel 2010+, поскольку
перечисленных выше (формулы, добавленные в Excel 2010 и более поздних версиях). Если это так, убедитесь, что
используется правильный префикс. - Если функция загружается в Excel, но появляется с одним или несколькими символами
@
добавлено, то это, вероятно, функция массива и должна быть написана с использованием
write_array_formula()
илиwrite_dynamic_array_formula()
(см.
разделы выше о поддержке динамических массивов и
Динамические массивы — оператор неявного пересечения «@»).
Наконец, если вы выполнили все предыдущие шаги и по-прежнему получаете
#ИМЯ?
, вы можете проверить действительный файл Excel, чтобы увидеть, что правильно
синтаксис должен быть. Для этого вы должны создать действующую формулу в Excel и
сохраните файл. Затем вы можете изучить XML в разархивированном файле.
Ниже показано, как это сделать с помощью Linux unzip
и xmllint libxml для форматирования XML для ясности:
$ unzip myfile.xlsx -d myfile $ xmlint --format myfile/xl/worksheets/sheet1. xml | грэп ''СУММ(1, 2, 3)
Справка, примеры и информация о формулах Excel
Обновлено: 12.04.2021 автором Computer Hope
Формулы — вот что сделало электронные таблицы такими популярными. Создавая формулы, вы можете выполнять быстрые вычисления, даже если информация в ячейках, относящихся к формуле, изменится. Например, у вас может быть общая ячейка, которая суммирует все значения в столбце.
Основы
- Все формулы электронных таблиц начинаются со знака равенства (=).
- После символа равенства вводится функция ячейки или формулы. Функция сообщает электронной таблице тип формулы.
- Если выполняется математическая функция, математическая формула заключается в круглые скобки. Математические функции или вычисления могут использовать оператор, включая плюс (+), минус (-), умножение (*), деление (/), больше (>) и меньше (<).
- Использование двоеточия (:) позволяет получить диапазон ячеек для формулы. Например, A1:A10 — это ячейки с A1 по A10.
- Формулы создаются с использованием относительной ссылки на ячейку по умолчанию, и если вы добавите знак доллара ($) перед столбцом или строкой, он станет абсолютной ссылкой на ячейку.
Ввод формулы электронной таблицы
Ниже приведен анимированный наглядный пример того, как формулу Excel можно вставить в электронную таблицу. В нашей первой формуле, введенной в ячейку «D1», мы вручную вводим формулу =sum, чтобы добавить 1 + 2 (в ячейках A1 и B2), чтобы получить в сумме «3». В следующем примере мы используем мышь, чтобы выделить ячейки от A2 до D2, а затем нажимаем кнопку формулы в Excel, чтобы автоматически создать формулу. Далее мы покажем, как можно вручную ввести формулу, а затем с помощью мыши получить значения ячеек (вы также можете выделить несколько ячеек, чтобы создать диапазон). Наконец, мы вручную вводим формулу умножения ( * ), используя функцию суммы, чтобы найти значение 5 * 100.
Примеры формул
Примечание
Перечисленные ниже функции могут не совпадать на всех языках Microsoft Excel. Все эти примеры выполнены в английской версии Microsoft Excel.
Кончик
Примеры ниже перечислены в алфавитном порядке. Если вы хотите начать с наиболее распространенной формулы, мы предлагаем начать с формулы =СУММ.
- =
- СРЕДНЕЕ
- СЧЕТ
- СЧЕТ
- СЧЁТЕСЛИ
- ЕСЛИ
- НЕПРЯМОЙ
- МЕДИАНА
- МИН. И МАКС.
- ПРОДУКТ
- РЭНД
- СЛУЧАЙ МЕЖДУ
- КРУГЛЫЙ
- СУММА
- СУММА
- СЕГОДНЯ
- ТРЕНД
- ТРИМ
- ВПР
=
=
= (равно) создает ячейку, равную другой. Например, если вы введете =A1 в B1, любое значение, которое было в A1, будет автоматически помещено в B1. Вы также можете создать формулу, которая сделает одну ячейку равной более чем одному значению. Например, если в ячейке A1 указано имя, а в ячейке B1 — фамилия, вы можете ввести 9. 0967 =A1&» «&B1 , который объединяет A1 с B1 с пробелом между каждым значением. Вы также можете использовать формулу конкатенации для объединения значений ячеек.
СРЕДНЕЕ
=СРЕДНЕЕ(X:X)
Показать среднюю сумму между ячейками. Например, если вы хотите получить среднее значение для ячеек от A1 до A30, введите =СРЗНАЧ(A1:A30) .
СЧЕТ
=СЧЁТ(Х:Х)
Подсчитать количество ячеек в диапазоне, содержащем только чисел. Например, вы можете найти, сколько ячеек между A1 и A15 содержат числовое значение, используя =СЧЁТ(A1:A15) . Если бы только ячейки A1 и A5 содержали числа, ячейка, содержащая эту функцию, отображала бы «2» в качестве своего значения.
СЧЁТ
=СЧЕТЧИК(Х:Х)
Подсчитать количество ячеек в диапазоне, содержащем любой текст (текст и числа, а не только числа) и не пустых. Например, вы можете подсчитать количество ячеек, содержащих текст в ячейках от A1 до A20, используя =COUNTA(A1:A20) . Если бы семь ячеек были пустыми, формула вернула бы число «13» (20-7=13).
СЧЁТЕСЛИ
=СЧЁТЕСЛИ(X:X,"*")
Подсчет ячеек с определенным значением. Например, если у вас есть =СЧЁТЕСЛИ(A1:A10;»ТЕСТ») в ячейке A11, то любая ячейка между A1 и A10 со словом «тест» считается за единицу. Таким образом, если в этом диапазоне есть пять ячеек, содержащих слово «тест», в ячейке A11 отображается значение «5» (10-5=5).
ЕСЛИ
=ЕСЛИ(*)
Синтаксис оператора IF: =IF(CELL=»VALUE»,»PRINT OR DO THIS»,»ELSE PRINT OR DO THIS») . Например, формула =ЕСЛИ(A1=»»,»ПУСТО»,»НЕПУСТО») заставляет любую ячейку, кроме A1, отображать текст «ПУСТО», если в ячейке A1 ничего нет. Если A1 не пуст, в ячейках отображается текст «НЕ ПУСТОЙ». Оператор IF имеет более сложное применение, но в целом его можно свести к приведенной выше структуре.
Использование ЕСЛИ также может быть полезно, когда вы хотите вычислить значения в ячейке, но только если эти ячейки содержат значения. Например, вы можете разделить значения между двумя ячейками. Однако, если в ячейках ничего нет, вы получите #DIV/0! ошибка. Используя оператор IF, вы можете вычислить ячейку, только если она содержит значение. Например, если вы хотите выполнить функцию деления только в том случае, если A1 содержит значение, введите =IF(A1=»»,»»,SUM(B1/A1)) , что делит ячейку B1 на A1, только если A1 содержит значение. В противном случае ячейка остается пустой.
- Получение #DIV/0! в электронной таблице Microsoft Excel.
НЕПРЯМОЙ
= ДВССЫЛ ("А" и "2")
Возвращает ссылку, заданную текстовой строкой. В приведенном выше примере формула вернет значение, содержащееся в ячейке A2.
=ДВССЫЛ("А"&СЛУЧМЕЖДУ(1,10))
Возвращает значение случайной ячейки между A1 и A10, используя косвенную функцию и функцию randbetween (поясняется ниже).
МЕДИАНА
=МЕДИАНА(A1:A7)
Найдите медиану значений ячеек с A1 по A7. Например, четыре — это медиана для 1, 2, 3, 4, 5, 6, 7.
МИН. И МАКС.
= МИН/МАКС(Х:Х)
Min и Max представляют минимальное или максимальное значение в ячейках. Например, если вы хотите получить минимальное значение между ячейками A1 и A30, введите =MIN(A1:A30) или =MAX(A1:A30) , чтобы получить максимальное значение.
ПРОДУКТ
=ПРОИЗВЕД(Х:Х)
Умножает две или более ячеек вместе. Например, =PRODUCT(A1:A30) будет объединять несколько ячеек от A1 до A30 (т. е. A1 * A2 * A3 и т. д.).
РЭНД
=СЛЧИС()
Генерирует случайное число больше нуля, но меньше единицы. Например, «0,681359187» может быть случайно сгенерированным числом, помещенным в ячейку формулы.
СЛУЧАЙ МЕЖДУ
= СЛУЧМЕЖДУ (1100)
Создать случайное число между двумя значениями. В приведенном выше примере формула создаст случайное целое число от 1 до 100.
КРУГЛЫЙ
= КРУГЛЫЙ (X, Y)
Округлить число до определенного количества знаков после запятой. X — это ячейка, содержащая число, которое необходимо округлить. Y — количество знаков после запятой для округления. Ниже приведены примеры.
= КРУГЛЫЙ (A2,2)
Округляет число в ячейке A2 до одного десятичного знака. Если число равно 4,7369, в приведенном выше примере это число округляется до 4,74. Если число равно 4,7614, оно округляется до 4,76.
= КРУГЛЫЙ (A2,0)
Округляет число в ячейке A2 до нуля знаков после запятой или до ближайшего целого числа. Если число равно 4,736, в приведенном выше примере это число будет округлено до 5. Если число равно 4,367, оно будет округлено до 4,9.0005
СУММА
=СУММ(Х:Х)
Наиболее часто используемая функция для сложения, вычитания, умножения или деления значений в ячейках. Ниже приведены различные примеры этой функции.
=СУММ(А1+А2)
Добавьте ячейки A1 и A2.
=СУММ(A1:A5)
Добавьте ячейки с A1 по A5.
=СУММ(А1,А2,А5)
Добавляет ячейки A1, A2 и A5.
=СУММ(А2-А1)
Вычитает ячейку A1 из A2.
=СУММ(А1*А2)
Умножает ячейки A1 и A2.
=СУММ(А1/А2)
Делит ячейку A1 на A2.
СУММА
=СУММЕСЛИ(Х:Х,"*"Х:Х)
Выполнять функцию СУММ, только если в первых выбранных ячейках есть указанное значение. Примером этого может быть =СУММЕСЛИ(A1:A6,»ТЕСТ»,B1:B6) , который суммирует значения B1:B6 только в том случае, если слово «тест» было введено где-то между A1:A6. Таким образом, если вы ввели «тест» (без учета регистра) в ячейке A1, но у вас есть числа от B1 до B6, это добавит значение только в ячейке B1, потому что «испытание» находится в ячейке A1.
- Дополнительную информацию см. в нашем определении SUMIF.
СЕГОДНЯ
=СЕГОДНЯ()
Распечатает текущую дату в ячейке, содержащей формулу. Значение меняется каждый раз, когда вы открываете электронную таблицу, чтобы отразить текущую дату и время. Если вы хотите ввести дату, которая не меняется, нажмите Ctrl и ; (точка с запятой), чтобы ввести дату.