Как сделать диапазон по условию в excel

Обновлено: 07.07.2024

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

Автоматически изменяемые диапазоны ячеек в Excel

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

Как сделать автоматическое изменение диапазона в Excel

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

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

  1. Если таким способом решить задачу, нельзя будет задействовать ячейки, входящие в столбец B, под другие цели.
  2. Такая таблица будет потреблять очень много оперативной памяти, из-за чего использование документа станет невозможным на слабых компьютерах.

Следовательно, нужно решать эту задачу через динамические имена. Чтобы их создать, необходимо выполнить следующую последовательность действий:

  1. Перейти на вкладку «Формулы», которая находится в главном меню. Там будет раздел «Определенные имена», где есть кнопка «Присвоить имя», по которой и надо нам нажать.
  2. Далее появится диалоговое окно, в котором нужно заполнить поля таким образом, как изображено на скриншоте. Важно отметить, что нам надо применять функцию =СМЕЩ совместно с функцией СЧЕТ, чтобы создать автоматически обновляемый диапазон.
  3. После этого нам надо использовать функцию СУММ, в качестве аргумента которой используем наш динамически изменяемый диапазон.

После выполнения этих действий мы можем увидеть, как охват ячеек, принадлежащих к диапазону «доход», обновляется по мере того, как мы добавляем туда новые элементы.

Функция СМЕЩ в Excel

Давайте рассмотрим функции, которые были нами записаны в поле «диапазон» ранее. С помощью функции СМЕЩ мы можем определять величину диапазона, учитывая то, сколько ячеек в колонке B заполнено. Аргументы функции следующие:

  1. Начальная ячейка. С помощью этого аргумента пользователь может показать, какая ячейка диапазона будет считаться верхней левой. От нее будет происходить отчет вниз и вправо.
  2. Смещение диапазона по строкам. С помощью этого диапазона мы задаем количество ячеек, на которое должно происходить смещение от верхней левой ячейки диапазона. Можно использовать не только положительные значения, а нулевые и минусовые. В таком случае смещения может не происходить вообще или же оно будет осуществляться в обратном направлении.
  3. Смещение диапазона по колонкам. Этот параметр аналогичен предыдущему, только позволяет задать степень смещения диапазона по горизонтали. Здесь также можно использовать как нулевые, так и отрицательные значения.
  4. Величина диапазона в высоту. Фактически название этого аргумента дает нам четко понять, что оно означает. Это то количество ячеек, на которое должно происходить увеличение диапазона.
  5. Величина диапазона в ширину. Аргумент аналогичный предыдущему, только уже касается колонок.

Как в Excel задать диапазон значений

Указывать последние два аргумента не нужно, если в этом нет необходимости. В этом случае величина диапазона будет составлять всего одну ячейку. Например, если указать формулу =СМЕЩ(A1;0;0), эта формула будет ссылаться на ту же ячейку, которая в первом аргументе. Если же смещение по вертикали поставить 2 единицы, то в этом случае ячейка будет ссылаться на ячейку A3. Теперь давайте детально распишем, что означает функция СЧЕТ.

Функция СЧЕТ в Excel

Как в Excel задать диапазон значений

С помощью функции СЧЕТ мы определяем, сколько ячеек в колонке B у нас по итогу заполнено. То есть, мы определяем с помощью двух функций то, сколько ячеек в диапазоне заполнено, и исходя из полученных сведений определяет величину диапазона. Следовательно, итоговая формула получится следующей: =СМЕЩ(Лист1!$B$2;0;0;СЧЁТ(Лист1!$B:$B);1)

Давайте разберем, как правильно понимать принцип работы этой формулы. Первый аргумент показывает на то, где начинается наш динамический диапазон. В нашем случае это ячейка B2. Дальнейшие параметры у нас имеют нулевые координаты. Это говорит о том, что смещения относительно верхней левой ячейки нам не нужно. Все, что мы заполняем – это размер диапазона по вертикали, в качестве которого мы использовали функцию СЧЕТ, которая определяет количество ячеек, в которых есть какие-то данные. Четвертый параметр, который мы заполнили – это единица. Таким образом мы показывает то, что общая ширина диапазона должна составлять одну колонку.

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

Соответственно, чтобы определять размер диапазона в зависимости от количества столбцов, нужно выполнять аналогичную последовательность действий, только в таком случае нужно в третьем параметре указать единицу, а в четвертом – формулу СЧЕТ.

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

Динамические диаграммы в Excel

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

Как в Excel задать диапазон значений

  1. Выделяем наш диапазон, после чего вставляем диаграмму типа «Гистограмма с группировкой». Найти этот пункт можно в разделе «Вставка» в разделе «Диаграммы–Гистограмма».
  2. Делаем левый клик мышью по случайной колонке гистограммы, после чего в строке функций будет показана функция =РЯД(). На скриншоте вы можете посмотреть на детальную формулу.
  3. После этого в формулу нужно внести некоторые изменения. Необходимо заменить диапазон после «Лист1!» на название диапазона. В результате получится следующая функция: =РЯД(Лист1!$B$1;;Лист1!доход;1)
  4. Теперь осталось в отчет добавить новую запись, чтобы проверить, обновляется ли диаграмма автоматически, или нет.

Полюбуемся теперь на нашу диаграмму.

Как в Excel задать диапазон значений

Давайте подведем итоги, как мы действовали. Мы на предыдущем этапе создали динамический диапазон, размер которого зависит от того, сколько элементов в него входит. Для этого мы использовали комбинацию функций СЧЕТ и СМЕЩ. Мы этот диапазон сделали именным, и потом ссылку на это имя использовали в качестве диапазона нашей гистограммы. Какой конкретно диапазон выбирать в качестве источника данных на первом этапе, не столь важно. Главное – заменить его на имя диапазона потом. Так можно существенно сэкономить оперативную память.

Именованные диапазоны и их использование

Давайте поговорим теперь более подробно про то, как правильно создавать именованные диапазоны и их использовать для выполнения тех задач, которые ставятся перед пользователем Excel.

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

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

  1. Максимальная длина составляет 255 знаков. Этого вполне хватит для того, чтобы присвоить такое имя, которое душе угодно.
  2. Имя не должно содержать пробелы. Следовательно, если в его состав входит несколько слов, то возможно их разделение с помощью символа подчеркивания.

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

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

Кроме этого, возможно создание именованного диапазона с помощью вкладки «Формулы», воспользовавшись инструментом «Задать имя». После того, как мы выберем его, появится окно, где надо выбрать имя для нашего диапазона, а также указать область, на которую он будет распространяться, вручную. Также можно задать где будет действовать этот диапазон: в рамках одного листа или на всей книге.

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

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

Еще один способ создания именованного диапазона – получать его из таблицы. Для этого существует специальный инструмент, который называется «Создать из выделенного». Как мы понимаем, чтобы его использовать, необходимо сначала выделить тот диапазон, который мы будем редактировать, после чего задать место, в котором у нас располагаются заголовки. В результате, основываясь на этих данных Excel автоматически обработает все данные, и заголовки будут автоматически присвоены.

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

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

Если для фильтрации данных требуются сложные условия (например, Type = "Produce" OR Salesperson = "Егоров"), можно использовать диалоговое окно Расширенный фильтр.

Чтобы открыть диалоговое окно Расширенный фильтр, щелкните Данные > Расширенные.

Расширенный фильтр

Продавец = "Егоров" ИЛИ Продавец = "Грачев"

Тип = "Фрукты" И Продажи > 1000

Тип = "Фрукты" ИЛИ Продавец = "Грачев"

(Продажи > 6000 И Продажи < 6500) ИЛИ (Продажи < 500)

(Продавец = "Егоров" И Продажи >3000) ИЛИ
(Salesperson = "Buchanan" AND Sales > 1500)

Продавец = имя со второй буквой "г"

Обзор

Действие команды Дополнительно отличается от действия команды Фильтр в некоторых важных аспектах.

Она отображает диалоговое окно Расширенный фильтр, а не меню "Автофильтр".

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

Образец данных

Этот пример данных используется для всех процедур, используемых в этой статье.

Данные включают четыре пустые строки над диапазоном списка, которые будут использоваться в качестве диапазона условия (A1:C4) и диапазон списка (A6:C10). Диапазон условий содержит названия столбцов и по крайней мере одну пустую строку между значениями условий и диапазоном списка.

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

Операторы сравнения

Операторы сравнения используются для сравнения двух значений. Результатом сравнения является логическое значение: ИСТИНА либо ЛОЖЬ.

Оператор сравнения

>= (знак «больше или равно»)

Больше или равно

<= (знак «меньше или равно»)

Меньше или равно

Использование знака равенства для ввода текста или значения

Поскольку знак "равно"(=) используется для указать формулу при введите текст или значение в ячейку, Excel его значение. однако это может привести к непредвиденным результатам фильтрации. Чтобы указать оператор сравнения равенства для текста или значения, введите условия в качестве строкового выражения в соответствующей ячейке в диапазоне условий:

=''= ввод ''

где ввод — искомый текст или значение. Например:

Вводится в ячейку

Вычисляется и отображается

Учет регистра

При фильтрации текстовых данных в Excel не учитывается регистр букв. Однако для поиска с учетом регистра можно воспользоваться формулой. Пример см. в разделе Условия с подстановочными знаками.

Использование заранее определенных имен

Вы можете назвать диапазон Условия,и ссылка на диапазон автоматически появится в поле Диапазон условия. Вы также можете определить имя База данных для фильтруемого диапазона списка и имя Извлечь для области, в которой нужно вставки строк, и эти диапазоны автоматически появятся в полях Диапазон списка и Копировать в соответственно.

Создание условий с помощью формулы

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

Формула должна возвращать результат ИСТИНА или ЛОЖЬ.

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

=''= ввод ''

Не используйте название столбца в качестве названия условия. Либо оставьте название условия пустым, либо используйте название, не являющееся названием столбца в диапазоне списка (в последующих примерах: "Среднее арифметическое" и "Точное совпадение").

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

Все остальные ссылки в формуле должны быть абсолютными.

Несколько условий, один столбец, любое из условий истинно

Логическое выражение: (Продавец = "Егоров" ИЛИ Продавец = "Грачев")

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

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

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$3.

Чтобы временно переместить диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько условий, несколько столбцов, все условия истинны

Логическое выражение: (Тип = "Фрукты" И Продажи > 1000)

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

Чтобы найти строки, отвечающие нескольким условиям в нескольких столбцах, введите все условия в одной строке диапазона условий. Используя пример, введите:

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$2.

Чтобы временно переместить диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько условий, несколько столбцов, любое из условий истинно

Логическое логика: (Тип = "Фрукты" ИЛИ Продавец = "Грачев")

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

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

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$B$3.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько наборов условий, один столбец во всех наборах

Логическое выражение: ( (Продажи > 6000 И Продажи < 6500 ) ИЛИ (Продажи < 500) )

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

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

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$D$3.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

Несколько наборов условий, несколько столбцов в каждом наборе

Логическое выражение: ( (Продавец = "Егоров" И Продажи > 3000) ИЛИ (Продавец = "Грачев" И Продажи > 1500) )

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

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

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Выполните одно из следующих действий:

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

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$C$3.Чтобы временно переместить диалоговое окно Расширенный фильтр, пока вы выбираете диапазон условия, нажмите кнопку Свернуть .

Используя пример, получим следующий отфильтрованный результат для диапазона списка:

Условия с подстановочными знаками

Логическое выражение: Продавец = имя со второй буквой "г"

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

Чтобы найти строки, в которых текстовое значение в столбце начинается с определенной последовательности знаков, введите эти знаки, не используя знак равенства (=). Например, если ввести условие Бел, будут найдены строки с ячейками, содержащими слова "Белов", "Беляков" и "Белугин".

Воспользуйтесь подстановочными знаками.

Используйте

Чтобы найти

Любой символ
Например, если найти "кузнецов" и "смайл"

Любое количество символов
Например, если найти "*-восток", будут "северо-восток" и "Юго-восток"

(тильда), за которой следует ?, * или

Вопроси метка, звездочка или тильда
Например, fy91

? соответствует результат "ан91?"

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

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

Щелкните ячейку в диапазоне списка. Используя пример, щелкните любую ячейку в диапазоне списка A6:C10.

На вкладке Данные в группе Сортировка и фильтр нажмите кнопку Дополнительно.

Выполните одно из следующих действий:

Чтобы отфильтровать диапазон списка, скрыв строки, не отвечающие условиям, выберите вариант Фильтровать список на месте

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

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

В поле Диапазон условий введите ссылку на диапазон условий, включая названия условий. Используя пример, введите $A$1:$B$3.

Чтобы временно отодвинуть диалоговое окно Расширенный фильтр, пока вы выбираете диапазон критериев, нажмите кнопку Свернуть .

Используя пример, получаем следующий отфильтрованный результат для диапазона списка:

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

Для динамических диапазонов создаем новый рабочий лист Excel и переименовываем его в «Списки». Заполняем столбцы наборами элементов:

Наборы элементов для раскрывающихся списков

На вкладке «Формулы» ленты инструментов нажимаем ссылку «Присвоить имя»:

Создание имени динамического диапазона

В поле «Имя» пишем «Группа», в поле «Диапазон» вставляем формулу =СМЕЩ(Списки!$A$2;0;0;СЧЁТЗ(Списки!$A:$A)-1;1) и нажимаем кнопку «OK». Первый именованный динамический диапазон создан.

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

Имя Диапазон
Группа =СМЕЩ(Списки!$A$2;0;0;СЧЁТЗ(Списки!$A:$A)-1;1)
Грибы =СМЕЩ(Списки!$B$2;0;0;СЧЁТЗ(Списки!$B:$B)-1;1)
Насекомые =СМЕЩ(Списки!$C$2;0;0;СЧЁТЗ(Списки!$C:$C)-1;1)
Рыбы =СМЕЩ(Списки!$D$2;0;0;СЧЁТЗ(Списки!$D:$D)-1;1)

Все имена диапазонов можно просмотреть в диспетчере имен («Формулы» — «Диспетчер имен»):

Диспетчер имен в Excel

В диспетчере имен доступно создание, изменение и удаление имен диапазонов.

Создание раскрывающегося списка

Создаем первый раскрывающийся список, от выбора значения в котором будет зависеть набор элементов второго выпадающего списка. Привяжем его к динамическому диапазону «Группа».

На листе Excel, где будет таблица с раскрывающимися списками, называем первые два столбца «Группа» и «Вид». Выбираем ячейку под названием столбца «Группа» и нажимаем ссылку «Проверка данных» на вкладке «Данные» ленты инструментов.

В открывшемся окне «Проверка вводимых значений» выбираем тип данных «Список», указываем источник «=Группа» и нажимаем кнопку «OK»:

Проверка вводимых значений для столбца «Группа» в таблице Excel

Первый выпадающий список создан. Скопировать его в другие ячейки столбца «Группа» можно простым протягиванием. Также, при присвоении источника данных диапазону ячеек, раскрывающийся список будет добавлен во все ячейки.

Раскрывающийся список по условию

Для создания выпадающего списка по условию выбираем ячейку под названием столбца «Вид» и нажимаем ссылку «Проверка данных» на вкладке «Данные» ленты инструментов. В открывшемся окне «Проверка вводимых значений» выбираем тип данных «Список», указываем источник =ЕСЛИ(A2="Грибы";Грибы;ЕСЛИ(A2="Насекомые";Насекомые;ЕСЛИ(A2="Рыбы";Рыбы;Списки!$E$1))) и нажимаем кнопку «OK».

Список, раскрывающийся с набором элементов по условию

Если в первом раскрывающемся списке (Группа) не будет выбрана ни одна позиция, во втором выпадающем списке (Вид) будет отображаться значение ячейки по адресу Списки!$E$1 (Выберите группу).

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

Есть ли у вас таблицы с данными в Excel, размеры которых могут изменяться, т.е. количество строк (столбцов) может увеличиваться или уменьшаться в процессе работы? Если размеры таблицы «плавают», то придется постоянно мониторить этот момент и подправлять:

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

Все это в сумме не даст вам скучать ;)

Гораздо удобнее и правильнее будет создать динамический «резиновый» диапазон, который автоматически будет подстраиваться в размерах под реальное количество строк-столбцов данных. Чтобы реализовать такое, есть несколько способов.

Способ 1. Умная таблица

Выделите ваш диапазон ячеек и выберите на вкладке Главная – Форматировать как Таблицу (Home – Format as Table):

dynamic_range1.jpg

Если вам не нужен полосатый дизайн, который добавляется к таблице побочным эффектом, то его можно отключить на появившейся вкладке Конструктор (Design). Каждая созданная таким образом таблица получает имя, которое можно заменить на более удобное там же на вкладке Конструктор (Design) в поле Имя таблицы (Table Name) .

dynamic_range3.jpg

Теперь можно использовать динамические ссылки на нашу «умную таблицу»:

Такие ссылки замечательно работают в формулах, например:

=СУММ(Таблица1[Москва]) – вычисление суммы по столбцу «Москва»

=ВПР(F5;Таблица1;3;0) – поиск в таблице месяца из ячейки F5 и выдача питерской суммы по нему (что такое ВПР?)

Такие ссылки можно успешно использовать при создании сводных таблиц, выбрав на вкладке Вставка – Сводная таблица (Insert – Pivot Table) и введя имя умной таблицы в качестве источника данных:

dynamic_range4.jpg

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

При создании выпадающих списков прямые ссылки на элементы умной таблицы использовать нельзя, но можно легко обойти это ограничение с помощью тактической хитрости – использовать функцию ДВССЫЛ (INDIRECT) , которая превращает текст в ссылку:

dynamic_range5.jpg

Т.е. ссылка на умную таблицу в виде текстовой строки (в кавычках!) превращается в полноценную ссылку, а уж ее выпадающий список нормально воспринимает.

Способ 2. Динамический именованный диапазон

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

Задача: сделать динамический именованный диапазон, который ссылался бы на список городов и автоматически растягивался-сжимался в размерах при дописывании новых городов либо их удалении.

Нам потребуются две встроенных функции Excel, имеющиеся в любой версии – ПОИКСПОЗ (MATCH) для определения последней ячейки диапазона и ИНДЕКС (INDEX) для создания динамической ссылки.

Ищем последнюю ячейку с помощью ПОИСКПОЗ

ПОИСКПОЗ(искомое_значение;диапазон;тип_сопоставления) – функция, которая ищет заданное значение в диапазоне (строке или столбце) и выдает порядковый номер ячейки, где оно было найдено. Например, формула ПОИСКПОЗ(“март”;A1:A5;0) выдаст в качестве результата число 4, т.к. слово «март» расположено в четвертой по счету ячейке в столбце A1:A5. Последний аргумент функции Тип_сопоставления = 0 означает, что мы ведем поиск точного соответствия. Если этот аргумент не указать, то функция переключится в режим поиска ближайшего наименьшего значения – это как раз и можно успешно использовать для нахождения последней занятой ячейки в нашем массиве.

Суть трюка проста. ПОИСКПОЗ перебирает в поиске ячейки в диапазоне сверху-вниз и, по идее, должна остановиться, когда найдет ближайшее наименьшее значение к заданному. Если указать в качестве искомого значение заведомо больше, чем любое имеющееся в таблице, то ПОИСКПОЗ дойдет до самого конца таблицы, ничего не найдет и выдаст порядковый номер последней заполненной ячейки. А нам это и нужно!

Если в нашем массиве только числа, то можно в качестве искомого значения указать число, которое заведомо больше любого из имеющихся в таблице:

dynamic_range7.jpg

Для гарантии можно использовать число 9E+307 (9 умножить на 10 в 307 степени, т.е. 9 с 307 нулями) – максимальное число, с которым в принципе может работать Excel.

Если же в нашем столбце текстовые значения, то в качестве эквивалента максимально большого числа можно вставить конструкцию ПОВТОР(“я”;255) – текстовую строку, состоящую из 255 букв «я» - последней буквы алфавита. Поскольку при поиске Excel, фактически, сравнивает коды символов, то любой текст в нашей таблице будет технически «меньше» такой длинной «яяяяя….я» строки:

dynamic_range8.jpg

Формируем ссылку с помощью ИНДЕКС

Теперь, когда мы знаем позицию последнего непустого элемента в таблице, осталось сформировать ссылку на весь наш диапазон. Для этого используем функцию:

ИНДЕКС(диапазон; номер_строки; номер_столбца)

Она выдает содержимое ячейки из диапазона по номеру строки и столбца, т.е. например функция =ИНДЕКС(A1:D5;3;4) по нашей таблице с городами и месяцами из предыдущего способа выдаст 1240 – содержимое из 3-й строки и 4-го столбца, т.е. ячейки D3. Если столбец всего один, то его номер можно не указывать, т.е. формула ИНДЕКС(A2:A6;3) выдаст «Самару» на последнем скриншоте.

Причем есть один не совсем очевидный нюанс: если ИНДЕКС не просто введена в ячейку после знака =, как обычно, а используется как финальная часть ссылки на диапазон после двоеточия, то выдает она уже не содержимое ячейки, а ее адрес! Таким образом формула вида $A$2:ИНДЕКС($A$2:$A$100;3) даст на выходе уже ссылку на диапазон A2:A4.

И вот тут в дело вступает функция ПОИСКПОЗ, которую мы вставляем внутрь ИНДЕКС, чтобы динамически определить конец списка:

=$A$2:ИНДЕКС($A$2:$A$100; ПОИСКПОЗ(ПОВТОР("я";255) ;A2:A100))

Создаем именованный диапазон

Осталось упаковать все это в единое целое. Откройте вкладку Формулы (Formulas) и нажмите кнопку Диспетчер Имен (Name Manager) . В открывшемся окне нажмите кнопку Создать (New) , введите имя нашего диапазона и формулу в поле Диапазон (Reference) :

Динамический именованный диапазон

Осталось нажать на ОК и готовый диапазон можно использовать в любых формулах, выпадающих списках или диаграммах.

В данной статье рассмотрим функцию MS Excel, которая называется ЕСЛИ. Данная функция позволяет проверить, соответствует ли содержащиеся в указанной ячейки данные заданному критерию или нет. В зависимости от результата проверки функция выводит заданное значение. Чтобы понять суть и возможности функции ЕСЛИ, рассмотрим примеры с ее использованием.

Функция ЕСЛИ в MS Excel с одним условием.

Функцией ЕСЛИ в Excel, первый пример.

Рассмотрим простой пример применения функции ЕСЛИ в MS Excel. У нас есть столбец №1, в котором содержаться числа от 1 до 10.

Функция ЕСЛИ в MS Excel. Описание и примеры использования

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

Взываем функцию ЕСЛИ в ячейку С3.

Аргументы функции

В диалоговом окне Аргументы функции видим три поля для заполнения:

Нажимаем ОК в диалоговом окне Аргументы функции.

Функция ЕСЛИ в MS Excel. Описание и примеры использования

Как видим, число содержащиеся в ячейки В3 не является числом, которое больше числа 4. Функция ЕСЛИ вернула значение_если_ложь (неправда). Протянем функцию ЕСЛИ вниз по столбцу, чтобы проверить значения находящиеся в остальных ячейках столбца №1, на соответствие нашему критерию (логическое_выражение).

Функция ЕСЛИ в MS Excel. Описание и примеры использования

Как видно из результата, ячейки в диапазоне В7:В12 содержат в себе числа, которые больше числа 4. Функция ЕСЛИ вернула значение_если_истина (правда).

Функция ЕСЛИ в Excel, второй пример.

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

Функция с одним условием

Теперь добавим в нашу таблицу столбец: Допуск к экзамену. Используем функцию ЕСЛИ для того, чтобы определить допущен студент к экзамену или нет. Диалоговое окно Аргументы функции будет выглядеть вот так:

Функция ЕСЛИ в MS Excel с одним условием

Важно: текстовый критерий в поле логическое_выражение должен быть заключен в кавычки. Иначе функция выдаст ошибку.

Если студен сдал зачет, он допущен к экзамену, если нет, то не допущен. Нажимаем ОК в диалоговом окне Аргументы функции и протягиваем функцию ЕСЛИ вниз, по всему столбцу Допуск к экзамену. Получаем:

Функция ЕСЛИ в MS Excel с одним условием

Видим, что в зависимости от результатов сдачи зачета, студент допущен к экзамену, либо не допущен.

Обращаю внимание, что при работе с функцией ЕСЛИ, можно использовать разные варианты равенств: больше (>), меньше(<), больше или равно (>=), меньше или равно (<=), равно (=), не равно (<>).

Функция ЕСЛИ в MS Excel с несколькими условиями.

Предположим, что у нас есть таблица с результатами сдачи контрольной работы студентами ВУЗа. Результаты контрольной работы оцениваются в баллах. От 0 до 100. Где все, что выше 90 баллов, отлично. Выше 80 баллов, это хорошо. Выше 70 баллов, это удовлетворительно. Ниже 70 баллов, это плохо.

Формула функции ЕСЛИ будет выглядеть вот так:


Где ячейка С3, первая из проверяемых ячеек в столбце Оценка. Далее функция протянута вниз по столбцу Результат, до конца таблицы.

Внимание: в данном случае формула функции ЕСЛИ прописана в ручную, прямо в строе формулы.

Таблица выглядит вот так:

Функция ЕСЛИ в MS Excel с несколькими условиями

В столбце Результат, в зависимости от количества баллов, функция ЕСЛИ вернула значение, согласно заданному критерию в формуле функции.

Использование операторов «И» и «ИЛИ» в функции ЕСЛИ в MS Excel.

Пример оператором "И"

Формула функции ЕСЛИ выглядит вот так:


Внимание: в данном случае формула функции ЕСЛИ прописана в ручную, прямо в строе формулы.

Пример с оператором "ИЛИ"

Формула функции ЕСЛИ выглядит вот так:


Внимание: в данном случае формула функции ЕСЛИ прописана в ручную, прямо в строе формулы.

Читайте также: