Как сделать задачу в excel
Мануал по решению типизированных задач в Microsoft Excel
Добрый день, уважаемые хаброжители!
Время от времени некоторым (а может и более, чем некоторым) из нас приходится сталкиваться с задачами по обработке небольших массивов данных, начиная от составления и анализа домашнего бюджета и заканчивая какими-либо расчетами по работе, учебе и т.д. Пожалуй, наиболее подходящим инструментом для этого является Microsoft Excel (или возможно иные его аналоги, но они менее распространены).
Поиск выдал мне всего одну статью на Хабре по схожей тематике — «Талмуд по формулам в Google SpreadSheet». В ней дано хорошее описание базовых вещей для работы в excel (хотя он и не 100% про сам excel).
Таким образом, накопив определенный пул запросов/задач, появилась идея их типизировать и предложить возможные решения (пусть не все возможные, но быстро дающие результат).
Речь пойдет о решении наиболее распространенных задач, с которыми сталкиваются пользователи.
Описание решений построено следующим образом – дается кейс, содержащий исходное задание, которое постепенно усложняется, к каждому шагу дано развернутое решение с пояснениями. Наименования функций будут даваться на русском языке, но в скобках при первом упоминании будет приводиться оригинальное наименование на английском языке (т.к. по опыту у подавляющего большинства пользователей установлена русскоязычная версия).
Кейс_1: Логические функции и функции поиска совпадений
«У меня есть набор значений в табличке и необходимо что бы при выполнении определенного условия/набора условий выводилось определенное значение» (с) Пользователь
Данные, как правило, представлены в табличной форме:
=ЕСЛИ(C5>5;«Заказ не требуется»;«Необходим заказ»)
На выходе получаем результат:
Таким образом, используя сочетание 2-х формул, мы находим решение нашей задачи и получаем результат:
Как видно из записи, в формулу «ЕСЛИ» включено одно условие «ИЛИ» (OR) и два условия с использованием формулы «И», включенных в него. Если хотя бы одно из условий 2-го уровня имеет значение «ИСТИНА», то в колонку «Результат» будет выведен результат «1», в противном случае будет «0».
Результат:
Как видно, написание подобной формулы не только не очень удобно и громоздко, но и может занять некоторое время на ее редактирование у неопытного пользователя в случае ошибки.
Минус подобного подхода в том, что он применим для небольшого количества условий, ведь, все их придется набирать вручную и «раздувать» нашу формулу до больших размеров, однако подход отличает полная «всеядность» к значениям и универсальность использования.
Как видно, значение «4» в формуле нам приходится оставить пустым и перенести результат «Г» на порядковый номер «5».
Затем в рабочей части таблицы уже прописывается формула со ссылкой на справочник, заполненный ранее. Т.е. в справочнике в столбце «D» происходит поиск значения из столбца «А» и при нахождении соответствия выводится значение из столбца «Е» в столбец «В».
Синтаксис формулы:
Вывод результата в ячейку B2:
Теперь представим ситуацию, когда необходимо подтянуть данные в одну таблицу из другой, при этом таблицы не идентичны. См. пример ниже
Видно, что строки в столбцах «Продукт» обеих таблиц не совпадают, однако, это не является препятствием для использования функции «ВПР».
Вывод результата в ячейку B2:
Вместо числа «1» можно использовать любое число (а также не только вычитать его, но и прибавлять к полученному значению), для получения желаемого результата, если нет желания ссылаться на определенную ячейку в столбце с нужным нам номером.
Получившийся результат:
Вариант решения, который сразу приходит на ум, следующий:
Вывод результата в ячейку C3:
Плюсы: формула может включать до 254 наименований справочников, минусы – их наименование должно быть строго числовым.
Результат для формулы с использованием функции «ВЫБОР»:
Как видно из табличных форм, каждая позиция имеет не только наименование (которое не является уникальным), но также и относится к определенному классу и имеет свой вариант фасовки.
Используя сочетание имени и класса и фасовки, мы можем создать новый признак, для этого в таблице с данными создаем дополнительный столбец «Доп.признак», который заполняем при помощи следующей формулы:
В функции «ВПР» в качестве аргумента «искомое_значение» используем все ту же связку трех признаков (наименование_класс_фасовка), но берем ее уже в таблице для заполнения и заносим непосредственно в аргумент (как вариант, можно было бы выделить значение для аргумента в дополнительный столбец в таблице для заполнения, но это действие будет излишним).
Напоминаю, что использование функции «ЕСЛИОШИБКА» (IFERROR) необходимо, если искомое значение так и не будет найдено, и функция «ВПР» выведет нам значение «#Н/Д» (об этом ниже).
Результат на картинке ниже:
Данный прием можно использовать и для большего количества признаков, единственное условие – уникальность получаемых комбинаций, если она не соблюдается, то результат будет некорректным.
Кейс_3 Поиск значения в массиве, или когда ВПР не в силах нам помочь
Как мы видим, функция «ВПР» тут бессильна, т.к. мы ищем не точное совпадение, а именно наличие в ячейке нужного нам значения.
Для решения задачи необходимо использовать комбинацию нескольких функций, а именно:
«ЕСЛИ»
«ЕСЛИОШИБКА»
«СТРОЧН»
«НАЙТИ»
По порядку обо всех, «ЕСЛИ» мы уже разобрали ранее, потому перейдем к функции «ЕСЛИОШИБКА» (IFERROR)
Теперь подробнее о синтаксисе функции «НАЙТИ» (FIND).
НАЙТИ(искомый_текст, просматриваемый_текст, [нач_позиция])
Как видно из рисунка выше, благодаря функциям «СТРОЧН» и «НАЙТИ» мы находим искомые значения вне зависимости от регистра символов, и места нахождения в ячейке, но необходимо обратить внимание на строку 5.
Условие поиска задано как «111», но в массиве поиска указано значение «1111111 печенюшки», однако формула выдает результат «Bingo!». Это происходит потому, что значение «111» входит в ряд значений «1111111», как следствие находится совпадение. В обратном случае данное условие не сработает.
Кейс_4 Поиск значения в массиве по нескольким условиям, или когда ВПР тем более не в силах нам помочь
Представим ситуацию, когда необходимо найти значение из «Таблица с результатом» в двумерном массиве «Справочник» по нескольким условиям, а именно по значению «Наименование» и «Месяц».
Табличная форма задания будет иметь следующий вид:
Синтаксис функции «ИНДЕКС» (INDEX)
ИНДЕКС(массив, номер_строки, [номер_столбца])
Синтаксис функции «ПОИСКПОЗ» (MATCH)
ПОИСКПОЗ(искомое_значение, просматриваемый_массив, [тип_сопоставления])
возвращает значение #Н/Д, т.к. значение «1» отсутствует в просматриваемом диапазоне.
Таким образом, мы получили координаты точки (1; #Н/Д) которые функция «ИНДЕКС» использует для поиска в аргументе «Массив».
Полностью написанная функция для ячейки B4 будет иметь следующий вид:
Поскольку, аргумент «Номер_столбца» имеет значение «#Н/Д», то результат для ячейки «B4» будет соответствующий.
Как видно из получившегося результата не все значения в таблице с результатом находят совпадение со справочником и в итоге мы видим, что часть значений в таблице выводится в виде «#Н/Д», что затрудняет использование данных для дальнейших расчетов.
Результат:
Что бы нейтрализовать этот негативный эффект используем функцию «ЕСЛИОШИБКА», о которой мы читали ранее, и заменяем значение, возвращающееся при ошибке на «0», тогда формула будет иметь вид:
Вывод результата в ячейку B4:
Как видно на картинке, значения «#Н/Д» более не мешают нам в последующих вычислениях с использованием значений в таблице с результатом.
Кейс_5 Поиск значения в диапазоне чисел
Функция ПРОСМОТР (LOOKUP) возвращает значение из строки, столбца или массива. Функция имеет две синтаксических формы: векторную и форму массива.
ПРОСМОТР(искомое_значение; просматриваемый_вектор; [вектор_результатов])
Вывод результата в ячейку B3:
Аргументы «Просматриваемый_вектор» и «Вектор_результата» можно записать в форме массива – в этом случае не придется выводить их в отдельную таблицу на листе Excel.
В этом случае функция будет выглядеть следующим образом:
Вывод результата в ячейку B3:
=ПРОСМОТР(E3;<0;1001;1501;2001;2501>;<«А»;«Б»;«В»;«Г»;«Д»>)
Кейс_6 Суммирование чисел по признакам
Для суммирования чисел по определенным признакам можно использовать три разных функции:
СУММЕСЛИ (SUMIF) – суммирует только по одному признаку
СУММЕСЛИМН (SUMIFS) – суммирует по множеству признаков
СУММПРОИЗВ (SUMPRODUCT) – суммирует по множеству признаков
Существует также вариант с использованием «СУММ» (SUM) и функции формулы массивов, когда формула «СУММ» возводится в массив:
(<=СУММ(()*())>
но такой подход довольно неудобен и полностью перекрывается по функционалу формулой «СУММПРОИЗВ»
Теперь подробнее по синтаксису «СУММПРОИЗВ»:
Как видно из таблицы с данными, что бы посчитать стоимость необходимо цену умножить на количество, а полученное значение, применив условия отбора переносить в таблица с результатом.
Однако, формула «СУММПРОИЗ» позволяет проводить такие расчеты внутри формулы.
Вывод результата в ячейку B4:
– на самом деле, в данной формуле можно было написать условие отбора также как и при отборе по печенькам, но тогда, пришлось бы перечислять три условия в формуле, в данном случае, проще написать исключение – не равно «с джемом» для этого используем значение «<>».
Вообще, если группы признаков/классов заранее известны, то лучше объединять их в эти группы, создавая справочники, чем записывать все условия в функцию, раздувая ее.
Результат:
Что ж, вот мы и подошли к концу нашего краткого мануала, который на самом деле мог бы быть намного больше, но целью было все-таки дать решение наиболее встречающихся ситуаций, а не описывать решение частных (но гораздо более интересных случаев).
Надеюсь, что мануал поможет кому-нибудь в решении задач при помощи Excel, ведь это будет значить, что мой труд не пропал зря!
Как сделать задачу в excel?
Пользователи Excel давно и успешно применяют программу для решения различных типов задач в разных областях.
Excel – это самая популярная программа в каждом офисе во всем мире. Ее возможности позволяют быстро находить эффективные решения в самых разных сферах деятельности. Программа способна решать различного рода задачи: финансовые, экономические, математические, логические, оптимизационные и многие другие. Для наглядности мы каждое из выше описанных решение задач в Excel и примеры его выполнения.
Решение задач оптимизации в Excel
Оптимизационные модели применяются в экономической и технической сфере. Их цель – подобрать сбалансированное решение, оптимальное в конкретных условиях (количество продаж для получения определенной выручки, лучшее меню, число рейсов и т.п.).
В Excel для решения задач оптимизации используются следующие команды:
Для решения простейших задач применяется команда «Подбор параметра». Самых сложных – «Диспетчер сценариев». Рассмотрим пример решения оптимизационной задачи с помощью надстройки «Поиск решения».
Условие. Фирма производит несколько сортов йогурта. Условно – «1», «2» и «3». Реализовав 100 баночек йогурта «1», предприятие получает 200 рублей. «2» — 250 рублей. «3» — 300 рублей. Сбыт, налажен, но количество имеющегося сырья ограничено. Нужно найти, какой йогурт и в каком объеме необходимо делать, чтобы получить максимальный доход от продаж.
Известные данные (в т.ч. нормы расхода сырья) занесем в таблицу:
На основании этих данных составим рабочую таблицу:
Активизируем команду «Поиск решения» и вносим параметры.
После нажатия кнопки «Выполнить» программа выдает свое решение.
Оптимальный вариант – сконцентрироваться на выпуске йогурта «3» и «1». Йогурт «2» производить не стоит.
Решение финансовых задач в Excel
Чаще всего для этой цели применяются финансовые функции. Рассмотрим пример.
Условие. Рассчитать, какую сумму положить на вклад, чтобы через четыре года образовалось 400 000 рублей. Процентная ставка – 20% годовых. Проценты начисляются ежеквартально.
Оформим исходные данные в виде таблицы:
Так как процентная ставка не меняется в течение всего периода, используем функцию ПС (СТАВКА, КПЕР, ПЛТ, БС, ТИП).
Вкладчику необходимо вложить эти деньги, поэтому результат отрицательный.
Для проверки правильности решения воспользуемся формулой: ПС = БС / (1 + ставка)кпер. Подставим значения: ПС = 400 000 / (1 + 0,05)16 = 183245.
Решение эконометрики в Excel
Для установления количественных и качественных взаимосвязей применяются математические и статистические методы и модели.
Дано 2 диапазона значений:
Значения Х будут играть роль факторного признака, Y – результативного. Задача – найти коэффициент корреляции.
Для решения этой задачи предусмотрена функция КОРРЕЛ (массив 1; массив 2).
Решение логических задач в Excel
В табличном процессоре есть встроенные логические функции. Любая из них должна содержать хотя бы один оператор сравнения, который определит отношение между элементами (=, >, =,
Пример задачи. Ученики сдавали зачет. Каждый из них получил отметку. Если больше 4 баллов – зачет сдан. Менее – не сдан.
Решение математических задач в Excel
Средствами программы можно решать как простейшие математические задачки, так и более сложные (операции с функциями, матрицами, линейными уравнениями и т.п.).
Условие учебной задачи. Найти обратную матрицу В для матрицы А.
Возможности Excel не безграничны. Но множество задач программе «под силу». Тем более здесь не описаны возможности которые можно расширить с помощью макросов и пользовательских настроек.
Доброго времени суток уважаемый читатель!
В этой статье я хотел бы описать примеры логических функций в Excel, как правильно их использовать, так как уверен, что это позволит более глубоко и эффективней применять их в работе. Все функции я уже описывал в статьях о логических функциях, часть №1 и часть №2, а также в ряде других статей, с которыми вы можете познакомиться на сайте.
Я хочу показать вам только практическое применение функций и их комбинации на тех примерах, которые вам могут пригодиться в работе для выполнения поставленных задач. Я думаю что вы согласитесь со мной в том что эффективное использование Excel и доведение своих задач до автоматизации позволит вам значительно сократить затраты своего рабочего времени и улучшить эффективность выполненной работы. Что позволит увеличить объемы ваших бизнес процессов или просто освободить свое время для самого ценного в жизни: семьи, друзей, отдыха, хобби и т.п.
Ну что же давайте теперь порешаем задачки с примерами использования логических функций:
Задача №1: Переоценка складских остатков;
Задача №2: Определение проходного бала на экзаменах;
Задача №3: Выявление перерасхода плановых средств;
Задача №4: Списание залежалого товара;
Задача №5: Подбор продуктов питания.
Итак, начнем решать поставленные задачи.
Задача №1:
На складе содержится группа товаров, к которому применимо определение «залежались», то есть его срок хранения подходит к концу и необходимо произвести переоценку, включить акцию или сделать скидку, срезав цену в 2 раза.
Возьмем за основу 3 условия:
Исходя из условий мы группируем наличный товар по условиям с помощью функции ЕСЛИ с тремя вложенными условиями (лишние пробелы нужно убрать):
=ЕСЛИ ( D2 >= 12; » Режем цену в 2 раза » ; ЕСЛИ ( D2 >= 10 ; » Скидка 50% » ; ЕСЛИ ( D2 >= 8; «Акционный товар»; «»)))
Как только мы определили, что необходимо делать и с каким товаром, следующим шагом будет определить какую скидку на товар необходимо делать, для увеличения продаж и освобождения склада от залежей «неликвидного» продукта.
Исходя из предыдущих 3 условий, будем делать 3 скидки:
Теперь, исходя из полученных условий, можно вывести сумму скидки на товар в зависимости от времени нахождения его на складе. Для получения результата воспользуемся формулой на базе функции ЕСЛИ:
=ЕСЛИ ( E2 = «Режем цену в 2 раза» ; C2/2 ; ЕСЛИ ( E2 = «Скидка 50%» ; C2*50% ; ЕСЛИ ( E2 = «Акционный товар» ; C2*20% ; «„ )))
Теперь определим новую цену складских остатков, используя возможности игнорирования ошибок с помощью логической функции ЕСЛИОШИБКА. Для этого необходима формула:
=ЕСЛИОШИБКА(C2-F2;“»)
Дополнение! Время хранения можно указывать по датам и привязать функциями времени для его автоматического определения. Это еще более автоматизирует ваши вычисления и улучшит точность и логику вычисления.
Задача №2:
В этом примере логических функций создадим отчёт о результатах выпускных экзаменов, которые должны сформировать пропускной бал при поступлении в гимназию. Экзаменов будет всего три: математика, русский язык и история, проходной бал для зачисления в гимназию будет равняться 12. Дополнительным условием можно добавить, что бы по экзамену с русского языка оценка должна быть не менее 4.
Исходные данные для нашей таблицы будут такими:
Необходимо создать формулу, которая будет общее количество полученных балов сверять с условием по проходному балу. Также в обязательном порядке производится проверка оценки по русскому языку на соответствие и выводится результат: «Зачислен» или «Не принят».
Для написания условия необходимо в формулу ввести логическую функцию И, которая будет отслеживать правильность двух условий и функцию СУММ для суммирования итоговых оценок. Формула получится такая:
=ЕСЛИ(И(C2>=4;СУММ(C2:E2)>=$C$8);»Зачислен»;»Не принят»)
Задача №3:
Очень часто планируя затраты для получения прибыли, специалисты должны отслеживать платежи что бы сумы не выходили за границы лимита и можно было получить запланированную прибыль. По этому важно знать где и когда превышен лимит затрат, что бы в дальнейшем выправить ситуацию и получить положительный результат.
В примере указаны плановые и фактические затраты за квартал в разрезе месяцев и есть возможность проанализировать какие из затрат были чрезмерны. Что бы улучшить визуализацию данных можно воспользоваться условным форматированием для разных ответов: «зеленым» цветом выделить положительные результаты и «красным» — отрицательные. Для этого нам поможет формула:
=ЕСЛИ ( ИЛИ ( C13 > C4 ; D13 > D4 ; E13 > E4 ) ; » Лимит превышен » ; « В границах лимита „ )
Задача №4:
В одном из примеров мы уже производили переоценку складских запасов, а теперь стоит добавить еще и работу статистической функции СРЗНАЧ, которая будет определять товар, цена которого ниже среднего значения цены по прайсу и рекомендовать его к списанию. Применив условное форматирование можно выделить такие позиции. Для получения результата нам нужна формула:
=ЕСЛИ(G2
Задача линейной оптимизации в Excel Предприятие выпускает 3 вида изделий. Для выпуска единицы изделия необходимо сырье в количестве 3 кг для 1-го вида, 8 кг для 2-го вида и 1 кг для 3-го вида. Общий запас сырья составляет 9500 кг. Изделия по видам входят в комплект в количестве 2, 1 и 5 штук соответственно. Определить оптимальное количество выпуска изделий, при котором количество комплектов будет максимальным. Комплекты немедленно отправляются потребителю. Склад вмещает не более 20 штук лишних изделий 2-го вида.
Задача определения количества вагонов для перевозки блоков
Завод выпускает бетонные строительные блоки. Характеристики блоков: марка, длина (м), ширина (м), высота (м) и удельный вес бетона, из которого изготовлен блок (кг/м3). На завод поступил заказ. Заказ представляет собой список, содержащий марки требуемых блоков и количество блоков каждой марки. Составить таблицу заказа и определить, сколько вагонов потребуется для отправки блоков заказчику.
Анализ распределения с помощью функции ЧАСТОТА в Excel
Маркетинговый отдел фабрики по пошиву одежды провел исследования, отражающиеся в таблице. Используя функцию ЧАСТОТА(), выполните анализ распределения населения некоторого региона по росту и определите предпочтения при планировании фабрикой объема выпуска верхней одежды.
Таблица умножения в Excel двумя способами
Создать таблицу умножения чисел от 1 до 9 (9 строк, 9 столбцов). В ячейке, соответствующей произведению 1*1, должна быть записана формула, которая затем должна быть скопирована во все остальные 80 ячеек. Решение в двух вариантах:
1)с использованием смешанных ссылок;
2)с использованием формулы массивов.
Распределение Пуассона. Поиск аппроксимирующей функции
Поиск корней и экстремумов функции. Построение графика
Задание: отделить корни уравнения f(x)=0, предварительно проанализировав область определения аргумента х. Используя процедуру Поиск решения найти: А) все корни данного уравнения Б) все имеющиеся экстремумы данной функции. Построить график функции на конечном отрезке.
Анализ распределения с помощью функции ЧАСТОТА в Excel (2)
Маркетинговый отдел фабрики по пошиву одежды провел исследования, отражающиеся в таблице. Используя функцию ЧАСТОТА(), выполните анализ распределения населения некоторого региона по росту и определите предпочтения при планировании фабрикой объема выпуска верхней одежды.