Microclimate.su

IT Новости
48 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как найти значение выражения в excel

Как при помощи Excel 2010 найти значение выражения

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

Полный список с описанием и подробными примерами использования вы найдете в справке программы, в разделе Список функций. Можете смотреть по алфавиту, но удобнее по категориям. И не забывайте о том, что в меню Файл, в команде Создать, есть много шаблонов для решения типовых задач. Заглядывайте туда, чтобы не тратить время на «изобретение велосипеда».

Задание — найти значение выражения

Найти значение выражения: 174 + √ (17 3 — 14 2 ) / (67 + 34 2 ) .

Решение — простая математика.

Пишем формулы, результат помещаем в ячейку А1 (рис. 10.1).

Рис. 10.1. Выражение вычислено

Я вам заодно расскажу о некоторых математических функциях, которые могут понадобиться при вычислениях. Я буду описывать функции в виде функция (аргумент1; аргумент2…) и расскажу о том, какие аргументы являются обязательными, а какие — нет. Итак, математические функции.

  • КОРЕНЬ(число) — возвращает значение квадратного корня. Аргумент число — обязательный. Это число, из которого нужно извлечь корень.
  • СТЕПЕНЬ(число, степень) — возводит число в указанную степень. Аргумент число — обязательный. Это основание степени — число, которое нужно возвести в степень. Аргумент степень — обязательный. Это показатель степени, в которую возводится основание.
  • СУММ(число1;число2;…) — вычисляет сумму всех чисел, указанных в качестве аргументов. Аргумент число1 — обязательный. Это первое слагаемое. Аргумент число2 и далее — необязательные. Может быть до 255 слагаемых.
  • ПРОИЗВЕД(число1;число2;…) — перемножает все аргументы и возвращает произведение. Аргумент число1 — обязательный. Это первый множитель. Аргументы число2 и далее — необязательные. Аргументов может быть не более 255.
  • EXP(число) — возвращает число е, возведенное в указанную степень. Число e равно 2,71828182845904 и является основанием натурального логарифма. Аргумент число — обязательный. Это показатель степени, в которую возводится основание e.
  • LN(число) — возвращает натуральный логарифм числа. Аргумент число — обязательный. Это положительное вещественное число, для которого вычисляется натуральный логарифм.
  • LOG(число; основание) — возвращает логарифм числа по заданному основанию. Аргумент число — обязательный. Это положительное вещественное число, для которого вычисляется логарифм. Аргумент основание — необязательный. Это основание логарифма. Если аргумент основание опущен, предполагается, что он равен 10. Пример: =LOG(64;2) возвращает значение 6 и отвечает на вопрос, в какую степень нужно возвести 2, чтобы получить 64.
  • LOG10(число) — возвращает логарифм числа по основанию 10. Аргумент число — обязательный. Это положительное вещественное число, для которого вычисляется десятичный логарифм.
  • ЗНАК(число — определяет знак числа. Возвращает: ƒƒ 1 — если число положительное; ƒƒ 0 — если число равно 0; ƒƒ –1 — если число отрицательное. Аргумент число — обязательный.

Использование ЕСЛИ с функциями И, ИЛИ и НЕ

Функция ЕСЛИ позволяет выполнять логические сравнения значений и ожидаемых результатов. Она проверяет условие и в зависимости от его истинности возвращает результат.

=ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)

Но что делать, если необходимо проверить несколько условий, где, допустим, все условия должны иметь значение ИСТИНА или ЛОЖЬ ( И), только одно условие должно иметь такое значение ( ИЛИ) или вы хотите убедиться, что данные НЕ соответствуют условию? Эти три функции можно использовать самостоятельно, но они намного чаще встречаются в сочетании с функцией ЕСЛИ.

Используйте функцию ЕСЛИ вместе с функциями И, ИЛИ и НЕ, чтобы оценивать несколько условий.

ЕСЛИ(И()): ЕСЛИ(И(лог_выражение1; [лог_выражение2]; …), значение_если_истина; [значение_если_ложь]))

ЕСЛИ(ИЛИ()): ЕСЛИ(ИЛИ(лог_выражение1; [лог_выражение2]; …), значение_если_истина; [значение_если_ложь]))

ЕСЛИ(НЕ()): ЕСЛИ(НЕ(лог_выражение1), значение_если_истина; [значение_если_ложь]))

Условие, которое нужно проверить.

Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА.

Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ.

Общие сведения об использовании этих функций по отдельности см. в следующих статьях: И, ИЛИ, НЕ. При сочетании с оператором ЕСЛИ они расшифровываются следующим образом:

И: =ЕСЛИ(И(условие; другое условие); значение, если ИСТИНА; значение, если ЛОЖЬ)

ИЛИ: =ЕСЛИ(ИЛИ(условие; другое условие); значение, если ИСТИНА; значение, если ЛОЖЬ)

НЕ: =ЕСЛИ(НЕ(условие); значение, если ИСТИНА; значение, если ЛОЖЬ)

Примеры

Ниже приведены примеры распространенных случаев использования вложенных операторов ЕСЛИ(И()), ЕСЛИ(ИЛИ()) и ЕСЛИ(НЕ()). Функции И и ИЛИ поддерживают до 255 отдельных условий, но рекомендуется использовать только несколько условий, так как формулы с большой степенью вложенности сложно создавать, тестировать и изменять. У функции НЕ может быть только одно условие.

Ниже приведены формулы с расшифровкой их логики.

=ЕСЛИ(И(A2>0;B2 0;B4 50);ИСТИНА;ЛОЖЬ)

Если A6 (25) НЕ больше 50, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае значение не больше чем 50, поэтому формула возвращает значение ИСТИНА.

Читать еще:  Герб россии для документов word

Если значение A7 («синий») НЕ равно «красный», возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ.

Обратите внимание, что во всех примерах есть закрывающая скобка после условий. Аргументы ИСТИНА и ЛОЖЬ относятся ко внешнему оператору ЕСЛИ. Кроме того, вы можете использовать текстовые или числовые значения вместо значений ИСТИНА и ЛОЖЬ, которые возвращаются в примерах.

Вот несколько примеров использования операторов И, ИЛИ и НЕ для оценки дат.

Ниже приведены формулы с расшифровкой их логики.

Если A2 больше B2, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае 12.03.14 больше чем 01.01.14, поэтому формула возвращает значение ИСТИНА.

=ЕСЛИ(И(A3>B2;A3 B2;A4 B2);ИСТИНА;ЛОЖЬ)

Если A5 не больше B2, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае A5 больше B2, поэтому формула возвращает значение ЛОЖЬ.

Использование операторов И, ИЛИ и НЕ с условным форматированием

Вы также можете использовать операторы И, ИЛИ и НЕ в формулах условного форматирования. При этом вы можете опустить функцию ЕСЛИ.

На вкладке Главная выберите Условное форматирование > Создать правило. Затем выберите параметр Использовать формулу для определения форматируемых ячеек, введите формулу и примените формат.

«Изменить правило» с параметром «Формула»» xmlns_AntiXSS=»urn:AntiXSSExtensions» />

Вот как будут выглядеть формулы для примеров с датами:

Если A2 больше B2, отформатировать ячейку, в противном случае не выполнять никаких действий.

=И(A3>B2;A3 B2;A4 B2)

Если A5 НЕ больше B2, отформатировать ячейку, в противном случае не выполнять никаких действий. В этом случае A5 больше B2, поэтому формула возвращает значение ЛОЖЬ. Если изменить формулу на =НЕ(B2>A5), она вернет значение ИСТИНА, а ячейка будет отформатирована.

Примечание: Наиболее распространенная ошибка заключается в том, чтобы ввести формулу в условное форматирование без знака равенства (=). Если вы сделаете это, вы увидите, что в диалоговом окне «условное форматирование» добавляется знак равенства и кавычки к формуле = = «или (a4>B2; a4

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

Как в Excel задать формулу

Довольно важной функцией в Excel являются формулы, которые выполняют арифметические и логические операции над данными в таблице. С их помощью можно легко решать математические и инженерные задачи, проводить различные вычисления, поэтому продвинутый пользователь программы должен знать, как в экселе задать формулу.

Простые формулы

Все формулы начинаются со знака равенства (=), это дает программе понять, что в ячейку вводится именно формула. К простым формулам относятся выражения, которые вычисляют сумму, разницу, умножение и т.д. Для написания таких выражений используются арифметические операторы:

– «*» — произведение (=4*3)
– «/» — деление (=4/3)
– «+» — сложение (=4-3)
– «-» — вычитание (=4+3)
– «^» — возведение в степень (=4^3)
– «%» — нахождение процента (для нахождения 4% от 156 используется такое выражение “=156*4%”, то-есть при дописывании “%” к числу, оно делится на 100 и “4%” преобразуется в “0.04”).

Пример. Формула суммы в экселе:
Для ячейки A1 ввели выражение “=12+3”. Программа автоматически провела исчисление и указала в ячейке не введенную формулу, а решение примера. Реализация других арифметических операций выполняется таким же образом.
В формуле можно использовать одновременно несколько операторов: “=56 + 56*4%” – данное выражение добавляет к числу 56 четыре процента.

Для правильной работы с операторами, следует знать правила приоритетности:
1) подсчитываются выражения в скобочках;
2) после произведения и деления считается сложение и вычитание;
3) выражения выполняются слева направо, если имеют одинаковый приоритет.

Формулы “=5*4+8” и “=5*(4+8)” имеют разные значения, потому что в первом случае изначально выполняется умножение “5*4”, а в другом вычисляется выражение стоящее в скобках “4+8”.

Формула excel среднего значения

Полезная формула, которая позволяет найти среднее значение нескольких введенных чисел и обозначается «=СРЗНАЧ()». Среднее значение чисел: 5, 10, 8 и 1 – это результат деления их суммы на количество, то-есть 24 на 4. Реализуется данная функция в excel таким образом:

Использование ссылок

Работа в программе не ограничивается лишь постоянными значениями (константами), поэтому формулы могут содержать не только числа, но и номера ячеек – ссылки. Такая функция позволит производить вычисления формул даже при изменении данных в указанной ячейке и обозначается ее буквой и номером.

Ячейки A1, A2 содержат числа 12, 15 относительно. При добавлении в ячейку A3 формулы “=A1+A2” в ней появится значение суммы чисел находящихся в ячейках A1 и A2.

Читать еще:  Размер визиток стандартный word

Если изменить число любой из ячеек A1 или A2, то формула посчитает сумму исходя из новых данных и ячейка A3 изменить свое значение.

Диапазон ячеек

В excel можно оперировать определенным диапазоном ячеек, что упрощает заполнение формул. Например для подсчета суммы ячеек от A1 до A6 необязательно вводить последовательность «=A1+A2+A3…”, а достаточно будет ввести оператор сложения «СУММ()» и зажав левую кнопку мыши провести от A1 до А6.

Результатом работы будет формула «=СУММ(A1:A6)».

Текст в формулах

Для использования текста в формулах, его необходимо заключать в двойные кавычки – “текст”. Чтобы объединить 2-а текстовых значения используется оператор амперсанд “&”, который соединяет их в одну ячейку с присвоением типа “текстовое значение”.

Чтобы вставить пробел между словами нужно записать так ” =А1&” “&А2 “.

Данный оператор может объединять текстовые значения и числовые, так например можно быстро заполнить подобную таблицу, соединив числа 10, 15, 17, 45 и 90 с текстом “шт.”

Регулярные выражения в Excel

Многие слышали, что такое регулярные выражения, но не всем известно, что они поддерживаются «под капотом» Microsoft Excel. Регулярные выражения дают возможность многократно ускорить работу с текстом, находить в нем самые замысловатые паттерны и решать самые сложные исследовательские задачи. Единственная проблема в том, что для их использования в Excel необходимо знание VBA.

Почему Microsoft не включила их как функции листа и включит ли когда-нибудь, непонятно и неизвестно.

Но с надстройкой !SEMTools эти знания не нужны. Зато минимальное понимание синтаксиса регулярок позволит с легкостью решать задачи, решение которых практически невозможно с помощью стандартных функций, либо требуются формулы огромной длины. Примеры таких мегаформул можно посмотреть в решении задач:

Функции регулярных выражений в Excel

Для поддержки регулярных выражений при наличии подключенной надстройки !SEMTools в Excel будут работать 3 функции — REGEXMATCH, REGEXEXTRACT и REGEXREPLACE.

Их синтаксис и принцип работы аналогичен синтаксису Google Spreadsheets. Поэтому формулы, составленные в Excel, будут иметь полную зеркальную совместимость с Google Spreadsheets.

REGEXMATCH возвращает Истина или Ложь (TRUE или FALSE в английской версии Excel), в зависимости от того, соответствует текст паттерну или нет.

REGEXEXTRACT извлекает первый попадающий под паттерн фрагмент текста. Небольшое отличие от Google Spreadsheets — если в искомом тексте такого фрагмента нет, Spreadsheets отдают ошибку, а в надстройке отдается пустая строка.

Примеры задач, решаемых с помощью регулярных выражений

Я не поскуплюсь на примеры, чтобы показать вам все возможности регулярных выражений, т.к. они действительно масштабны. Надеюсь, эта статья послужит руководством и призывом активнее пользоваться их мощью. От простого к сложному.

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

Извлечение данных из ячеек с помощью RegEx

Извлечь из ячейки содержимое до / после первой цифры включительно

Такие простые два выражения. «+» — это служебный символ-квантификатор. Он обеспечивает «жадный» режим, при котором берутся все удовлетворяющие выражению символы до тех пор, пока на пути не встретится не удовлетворяющий ему, или конецначало строки. Точка обозначает любой символ, таким образом, берутся любые символы до конца строки, перед которыми есть цифра.

«d». d обозначает «digits», иначе, цифры. Поскольку квантификатора после d в примерах выше нет, то одну. Если потребуется исключить из результатов эту цифру, это можно сделать позднее. В !SEMTools есть простые способы удалить символы в начале или конце ячейки.

Цифры можно выразить и другим регулярным выражением:

«Вытянуть» цифры из ячеек

Как извлечь из строки цифры? Регулярное выражение для такой операции будет безумно простым:

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

Если их нужно вывести не сплошной последовательностью, а через разделитель, сохранив фрагменты, где символы следовали друг за другом, выражение будет чуть иным, с «жадным» квантификатором. А при извлечении нужно будет использовать разделитель.

Это справедливо и для любых других символов, пример с числами ниже:

Извлечь из ячейки числа из N цифр

Как видно в примере выше, помимо чисел, обозначающих годы, были извлечены и другие числа, например, 1. Чтобы извлечь исключительно последовательности из 4 цифр, потребуется видоизменить выражение. Есть несколько вариантов:

Последние два варианта включают квантификатор фигурные скобки. Он указывает минимальное количество повторений удовлетворяющего паттерну символа или фрагмента строки. Паттерну, стоящему непосредственно перед квантификатором. В данном случае подряд должны идти любые 4 символа, являющиеся цифрами.

Читать еще:  Как сделать основную надпись в word

Извлекаем все 4-цифровые последовательности (год) через разделитель

Проверить ячейки на соответствие регулярному выражению

Если нет необходимости извлекать данные, а нужно лишь проверить, соответствуют ли они паттерну, чтобы потом отфильтровать их, удобнее использовать процедуру, эквивалентную формуле REGEXMATCH.

Найти в ячейке числа из N цифр

В зависимости от того, является N необходимым или достаточным условием, нужны разные регулярные выражения. Иными словами, считать ли последовательности из N+1, N+2 и т.д. цифр подходящими или нет. Если да — выражение будет таким же, как уже указывалось выше:

Если же нас интересуют строго последовательности из N цифр, задачу придется производить в 2 итерации:

  • В первую итерацию извлекать цифры вместе с границами строк или нецифровыми символами, идущими после/перед (это станет своеобразной проверкой отсутствия других цифр)
  • И во вторую уже сами цифры.

Выражения для первой итерации будут, соответственно:

Если внимательно посмотреть на отличие в синтаксисе, можно понять, что означают символы в нем:

  • вертикальная черта «|» обозначает «ИЛИ»
  • скобки нужны для перечисления внутри них аргументов и «отгораживания» их от остального выражения
  • каретка «^» обозначает начало строки
  • символ доллара «$» — конец строки
  • D — нечисловые символы. Обратите внимание, верхний регистр меняет значение d на противоположное. Это справедливо также для пар w и W, s и S, обозначающих латиницу и не-латиницу, пробелы и не-пробелы соответственно.

Разбить ячейку по буквам

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

Извлечь латиницу регулярным выражением

Выражение «[a-zA-Z]» обозначает все символы латиницы. Дефис и в этом, и в предыдущем случае обозначает, что берутся все символы между a и z и между A и Z в общей таблице символов Unicode. Квадратные скобки — синоним «ИЛИ». Каждый из элементов или множеств внутри квадратных скобок рассматривается, и выражение не находит ничего, только если сравниваемая строка не содержит ни одного элемента внутри квадратных скобок.

Извлекаем латиницу с помощью регулярных выражений

Извлечь символы в конце/начале строк по условию

Стандартные формулы ПРАВСИМВ и ЛЕВСИМВ позволяют извлечь из ячейки соответственно последние и первые N символов, но на этом их возможности заканчиваются.

С помощью регулярных выражений можно извлечь:

  • символы, идущие после и включая последнюю заглавную букву в ячейке, заканчивающейся на восклицательный знак. Так мы извлечем из ячеек все восклицательные предложения. Выражение — «[А-Я][а-яa-z0-9 ]+!$»
  • первые N выбранных символов из определенного множества, если ячейка с них начинается
  • аналогично, последние N определенных символов, если ячейка на них заканчивается

Замена подстрок по регулярному выражению

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

  • удаление цифр из текста
  • удаление пунктуации
  • всех символов, кроме букв и цифр

Но бывают случаи, когда необходима реальная замена — например, когда нужно заменить буквы с хвостиками/умляутами/ударениями и прочими символами из европейских алфавитов на их английские аналоги. Задача популярна среди SEO-специалистов, формирующих урлы сайтов этих стран на основе оригинальной семантики. Так выглядит начало таблицы паттернов для замены диакритических символов на латиницу с помощью RegEx при генерации URL:

Диакритические символы и их английские эквиваленты

Разбить буквы и цифры в ячейке

Если строго соблюдать постановку этой задачи, ее выполнить довольно сложно. Но зато с помощью регулярных выражений можно отделить цифровые последовательности символов от нецифровых. Так будет выглядеть выражение:

А так будет выглядеть процесс на практике:

Разбиваем текст на цифры и нецифровые символы (буквы и знаки препинания) с помощью регулярного выражения

Вставить текст после первого слова

При замене по регулярному выражению в !SEMTools есть опция замены не всех, а только первого найденного фрагмента, удовлетворяющего паттерну. Это позволяет решить задачу вставки символов после первого слова. Просто заменим первый пробел на нужные нам символы с помощью соответствующей процедуры:

Регулярные выражения для поиска конкретных слов в !SEMTools

Найти слова по регулярному выражению

Извлечь слова по регулярному выражению

Удалить слова по регулярному выражению

Очистить ячейки, не соответствующие регулярному выражению

Когда в вашем распоряжении массив данных, в котором могут быть ошибки, с которыми разбираться некогда, и нужно извлечь только 100% подходящие данные, можно воспользоваться регулярными выражениями для очистки нерелевантных.

  • оставить ячейки с определенным количеством слов
  • оставить ячейки с определенным количеством символов
  • оставить ячейки, содержащие только цифры
  • оставить ячейки, содержащие только буквы
  • оставить ячейки, содержащие адрес электронной почты в доменной зоне .com и .ru

Примеры использования «Извлечь ячейки по регулярному выражению».

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector
×
×