Как выбрать текстовые данные в excel

Для удобства работы с текстом в Excel существуют текстовые функции. Они облегчают обработку сразу сотен строк. Рассмотрим некоторые из них на примерах.

Примеры функции ТЕКСТ в Excel

Преобразует числа в текст. Синтаксис: значение (числовое или ссылка на ячейку с формулой, дающей в результате число); формат (для отображения числа в виде текста).

Самая полезная возможность функции ТЕКСТ – форматирование числовых данных для объединения с текстовыми данными. Без использования функции Excel «не понимает», как показывать числа, и преобразует их в базовый формат.

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

Выручка.

Использование амперсанда без функции ТЕКСТ дает «неадекватный» результат:

Плохой пример.

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

ТЕКСТ.

Формула «для даты» теперь выглядит так:

Второй аргумент функции – формат. Где брать строку формата? Щелкаем правой кнопкой мыши по ячейке со значением. Нажимаем «Формат ячеек». В открывшемся окне выбираем «все форматы». Копируем нужный в строке «Тип». Вставляем скопированное значение в формулу.

Формат ячеек.

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

Числа.

Если нужно вернуть прежние числовые значения (без нулей), то используем оператор «—»:

Оператор 2 минуса.

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



Функция разделения текста в Excel

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

  • ЛЕВСИМВ (текст; кол-во знаков) – отображает заданное число знаков с начала ячейки;
  • ПРАВСИМВ (текст; кол-во знаков) – возвращает заданное количество знаков с конца ячейки;
  • ПОИСК (искомый текст; диапазон для поиска; начальная позиция) – показывает позицию первого появления искомого знака или строки при просмотре слева направо

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

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

ФИО.

В первой строке есть только имя и фамилия, разделенные пробелом. Формула для извлечения имени: =ЛЕВСИМВ(A2;ПОИСК(» «;A2;1)). Для определения второго аргумента функции ЛЕВСИМВ – количества знаков – используется функция ПОИСК. Она находит пробел в ячейке А2, начиная слева.

Формула для извлечения фамилии:

ПРАВСИМВ.

С помощью функции ПОИСК Excel определяет количество знаков для функции ПРАВСИМВ. Функция ДЛСТР «считает» общую длину текста. Затем отнимается количество знаков до первого пробела (найденное ПОИСКом).

Вторая строка содержит имя, отчество и фамилию. Для имени используем такую же формулу:

ЛЕВСИМВ.

Формула для извлечения фамилии несколько иная: Это пять знаков справа. Вложенные функции ПОИСК ищут второй и третий пробелы в строке. ПОИСК(» «;A3;1) находит первый пробел слева (перед отчеством). К найденному результату добавляем единицу (+1). Получаем ту позицию, с которой будем искать второй пробел.

Часть формулы – ПОИСК(» «;A3;ПОИСК(» «;A3;1)+1) – находит второй пробел. Это будет конечная позиция отчества.

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

Формула «для отчества» строится по тем же принципам:

ПСТР.

Функция объединения текста в Excel

Для объединения значений из нескольких ячеек в одну строку используется оператор амперсанд (&) или функция СЦЕПИТЬ.

Например, значения расположены в разных столбцах (ячейках):

ФИО 2.

Ставим курсор в ячейку, где будут находиться объединенные три значения. Вводим равно. Выбираем первую ячейку с текстом и нажимаем на клавиатуре &. Затем – знак пробела, заключенный в кавычки (“ “). Снова — &. И так последовательно соединяем ячейки с текстом и пробелы.

Получаем в одной ячейке объединенные значения:

Объединение.

Использование функции СЦЕПИТЬ:

СЦЕПИТЬ.

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

Функция ПОИСК текста в Excel

Функция ПОИСК возвращает начальную позицию искомого текста (без учета регистра). Например:

СЦЕПИТЬ.

Функция ПОИСК вернула позицию 10, т.к. слово «Захар» начинается с десятого символа в строке. Где это может пригодиться?

Функция ПОИСК определяет положение знака в текстовой строке. А функция ПСТР возвращает текстовые значения (см. пример выше). Либо можно заменить найденный текст посредством функции ЗАМЕНИТЬ.

Скачать пример функции для работы с текстом в Excel

Читайте так же: как перевести число и сумму прописью.

Синтаксис функции ПОИСК:

  • «искомый текст» — что нужно найти;
  • «просматриваемый текст» — где искать;
  • «начальная позиция» — с какой позиции начинать искать (по умолчанию – 1).

Если нужно учитывать регистр, используется функция НАЙТИ.

Функция ВЫБОР() в Excel

​Смотрите также​Как работает выборка уникальных​У нас добавилось 2​ ячеек с запросом.​ основании этого номера​ В нашем случаи​ CTRL+SHIFT+Enter. Если все​ командой сайта office-guru.ru​ пользователь выберет​=Sheet3!$A$3:$A$5​. Так, например, рядом​

​ используя всевозможные функции​ число «2», п.​. Можно воспользоваться специальной​ 7 (номер позиции),​ например, подсчет первых​ ячейки, то функция​

Синтаксис функции ВЫБОР()

​Функция ВЫБОР(), английский вариант CHOOSE(),​​ значений Excel? При​

  • ​ пустые строки. Теперь​​ Чтобы получить максимально​ строки функции ИНДЕКС​ 3 элемента массива​ сделано правильно в​Источник: http://www.excel-user.com/2011/02/cascading-validation-lists.html​Portugal​Нажмите​ с​ и хитрости. Еще​ ч. нам нужно​
  • ​ функцией. Смотрите статью​ где 7 количество​ 2-х, 3-х и​ возвращает соответственно ссылки.​ возвращает значение из заданного​ выборе любого значения​
  • ​ в ячейку A1​ эффективный результат, будем​ выберет соответствующее значение​ будут содержат значение​ строке формул появятся​Перевел: Антон Андронов​
  • ​, то мы должны​ОК​France​ один способ сделать​
  • ​ выбрать два знака​​ «Разделить текст Excel​​ значений в списке.​ т.д. значений.​В диапазоне​ списка аргументов-значений в​ (фамилии) из выпадающего​ введите значение «Клиент:».​ использовать выпадающий список,​ из таблицы A6:A18.​ ИСТИНА, так как​ фигурные скобки.​Автор: Антон Андронов​ обратиться к базе​, чтобы сохранить и​стоит индекс​

Примеры

​ диаграмму смотрите в​​ (две буквы).​​ на несколько ячеек»​ Затем по номеру​Выберем 2 случайных значения​А8:А12​ соответствии с заданном​

​ списка B1, в​Пришло время для создания​ в качестве запроса.​ В итоге формула​ минимальное значение 8​Обратите внимание ниже на​

​Если приходиться работать с​

​ с индексом​ закрыть диалоговое окно.​2​

​ статье «Диаграмма в​Нажимаем кнопку «ОК».​ здесь. Можно применить​ позиции (случайное число)​ из списка значений.​

​содержатся школьные оценки​ индексом. Например, формула​

​ таблице подсвечиваются цветом​ выпадающего списка, из​ Это очень удобно​ возвращает это значение​ содержит еще 2​ рисунок, где в​

​ большими таблицами определенно​

​3​

​Имена диапазонам, содержащим города,​, который соответствует списку​ Excel в виде​ Получилась такая формула.​ формулу. Этот способ​ выводится значение из​ Также получим формулу​ от 1 до​

​ =ВЫБОР(2;»ОДИН»;»ДВА»;»ТРИ») вернет значение​​ все строки, которые​​ которого мы будем​ если нужно часто​ в ячейку B3​ дубликата в столбце​ ячейку B3 была​ найдете в них​, в которой хранятся​ можно присвоить точно​ городов​​ термометра».​​ =ПСТР(A1;1;2)​ мы описали в​​ исходного списка.​​ для выбора 1​

​ 5. Необходимо вывести​ ДВА. Здесь 2​ содержат это значение​ выбирать фамилии клиентов​ менять однотипные запросы​

excel2.ru

Выбор 2-х случайных значений из списка в MS EXCEL

​ в качестве результата​ B6:B18.​ введена данная формула​ дублирующийся суммы разбросаны​ названия городов Португалии.​

​ таким же образом.​​2​​ПРЕДСТАВЬТЕ СИТУАЦИЮ:​

​Второй вариант.​ статье «Разделить текст​Если текстовая строка в​​ случайного значения.​​ оценку прописью, т.е.​ — это значение​ (фамилию). Чтобы в​

  • ​ в качестве запроса.​ для экспонирования разных​ вычисления.​Следующий шаг – это​​ в массиве:​​ вдоль целого столбца.​ Мы воспользуемся функцией​Теперь мы можем создать​. Позже Вы увидите,​Мы хотим создать​
  • ​Выбор значений в ячейке​​ в ячейке Excel​​ ячейке содержит несколько​Пусть в диапазоне​​ «кол»;»неуд»;»удовлетворительно»;»хорошо»;»отлично».​​ индекса, а «ОДИН»;»ДВА»;»ТРИ» это​ этом убедится в​Перед тем как выбрать​

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

​Excel.​ по столбцам» тут.​ слов, например, «Василий​A6:A12 ​Формула =ВЫБОР(A8;»кол»;»неуд»;»удовлетворительно»;»хорошо»;»отлично») решает эту​ первый, второй и​ выпадающем списке B1​ уникальные значения из​

Выбор 1 случайного значения из списка

​ детально рассмотрим: как​ теперь можно легко​ именно строках диапазона​ первым наименьшим числом:​

​ у вас может​(VLOOKUP) для поиска​ тех ячейках, где​ будет использован.​ табличку, где можно​Нам нужно выбрать​Здесь рассмотрим,​ Иванович Петров», то​содержится список текстовых значений.​ задачу по выбору​

excel2.ru

Выбор в MS EXCEL из текстовой строки n-го слова

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

​ значения из ячейки​ планировали выбирать данные.​Если Вы работаете в​​ выбрать страну и​​ из ячейки А2​как сделать выбор в​ можно создать формулу​Чтобы выбрать 2 случайных​ значений из списка​​Функция ВЫБОР() в Excel достаточно проста: Вы​​ После чего автоматически​

​Перейдите в ячейку B1​

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

​B1​ Выделите ячейку​ Excel 2010, то​ соответствующий ей город.​ все цифры, которые​ ячейке​ для вывода, например,​ значения из списка​ в Excel. Альтернативное​

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

​B1​ можете создать лист-источник​ При этом с​ расположены после «тире».​Excel​ первого (второго, третьего​

excel2.ru

Как сделать выбор в ячейке Excel.

​ (диапазон​​ решение можно построить​ ​ и порядковый номер​ уже другие строки.​​ «ДАННЫЕ»-«Работа с данными»-«Проверка​Для примера возьмем историю​ можно изменить так,​ определения именно первого​ Далее разберем принцип​ числовым значением, которое​ названиями стран. После​(в ней мы​ в отдельной рабочей​ помощью выпадающих списков,​
​ Здесь мы к​​, как выделить часть​ и т.д.) слова.​ ​A6:A12​​ на основе формулы ​ (индекс) значения, которое​ Такую таблицу теперь​ данных».​ взаиморасчетов с контрагентами,​ чтобы выбрать первое​ наименьшего значения. Реализовывается​ действия формулы и​ имеет свои дубликаты.​
​ того как индекс​ будем выбирать страну),​ книге. Если же​ необходимо ограничить доступные​
​ функции «ПСТР» добавим​ данных и перенести​
​Пусть текстовая строка Василий​
​) будем действовать следующим​=ИНДЕКС({«кол»:»неуд»:»удовлетворительно»:»хорошо»:»отлично»};A8)​ ​ нужно вывести из​
​ легко читать и​На вкладке «Параметры» в​ как показано на​ максимальное значение в​ данная задача с​ пошагово проанализируем весь​ Нужна автоматическая выборка​ будет известен, мы​ откройте вкладку​ у Вас версия​
​ пользователям варианты стран​
​ функцию «НАЙТИ». В​ их другую ячейку.​ Иванович Петров находится​ образом (см. Файл​
​Данный подход можно использовать​ этого массива.​ анализировать.​ разделе «Условие проверки»​ рисунке:​ Excel:​ помощью функции СТРОКА,​ порядок всех вычислений.​ данных по условию.​ выберем список, который​
​Data​ Excel 2003 года,​ и городов, из​ ячейке В2 пишем​ Для этого мы​ в​
​ примера):​ для отображения дня​ВЫБОРномер_индексазначение1​
​Скачать пример выборки из​
​ из выпадающего списка​ ​В данной таблице нам​
​Если необходимо изменить условия​ она заполняет элементы​​ В Excel для​ станет источником данных​(Данные), нажмите​ и Вы планируете​ которых они могут​ такую формулу.​
​ воспользуемся функцией «ПСТР».​
​A7.​сопоставим каждому текстовому значению​ недели прописью​;значение2;…), где​ списка с условным​ «Тип данных:» выберите​ нужно выделить цветом​ формулы так, чтобы​ массива в памяти​
​Ключевую роль здесь играет​ этой цели можно​ для нашего второго​Data Validation​
​ использовать именованный диапазон,​ выбирать. В первой​Пояснение.​ Эта функция выбирает​Выведем из строки​ случайное число (используйте​=ВЫБОР(A8;»понедельник»;»вторник»;»среда»;»четверг»;»ПЯТНИЦА!!!»;»СУББОТА!!»;»ВОСКРЕСЕНЬЕ!») В этом случае​Номер_индекса​ форматированием.​ значение «Список».​ все транзакции по​ можно было в​ программы номерами строк​
​ функция ИНДЕКС. Ее​
​ успешно использовать формулу​ выпадающего списка. Для​(Проверка данных), а​ то значения должны​ ячейке мы сделаем​Формула похожа на​ из текста ячейки​​ третье слово, т.е.​ функцию СЛЧИС()), расположив​ значение в ячейке​
​   — номер выбираемого​Принцип действия автоматической подсветки​В поле ввода «Источник:»​ конкретному клиенту. Для​ Excel выбрать первое​ листа. Но сначала​ номинальное задание –​ в массиве.​ этого напишем такую​ затем в выпадающем​

excel-office.ru

Создаем связанные выпадающие списки в Excel – самый простой способ!

​ находиться в той​​ выбор страны, а​ формулу из первого​ нужные слова, числа,​ фамилию. Номер слова,​ его в столбце​ А8 может принимать​ аргумента-значения. Номер_индекса должен​ строк по критерию​ введите =$F$4:$F$8 и​ переключения между клиентами​ максимальное, но меньше​ от всех этих​ это выбирать из​Чтобы определить соответствующие значение​ формулу:​ меню выберите​ же книге, можно​ во второй будут​

​ варианта. Мы добавили​ коды, др. данные.​ которое нужно вывести​С​ значение от 1​ быть числом от​ запроса очень прост.​​ нажмите ОК.​​ будем использовать выпадающий​ чем 70:​ номеров вычитается номер​​ исходной таблицы (указывается​​ первому наименьшему числу​=CHOOSE(VLOOKUP(B1,Sheet3!$A$3:$B$5,2,FALSE),England,France,Portugal)​Data Validation​

Связанный выпадающий список в Excel

​ на другом листе.​ доступны только принадлежащие​ функцию «НАЙТИ» и​Функция находится в​ поместим в ячейку​(см. также статью​ до 7.​ 1 до 254.​ Каждое значение в​В результате в ячейке​ список. Поэтому в​=70;»»;B6:B18));СТРОКА(B6:B18)-СТРОКА(B5);»»)))’ class=’formula’>​ на против первой​ в первом аргументе​​ нужна выборка из​​=ВЫБОР(ВПР(B1;Sheet3!$A$3:$B$5;2;ЛОЖЬ);England;France;Portugal)​​(Проверка данных).​​Мы будем использовать именованные​​ выбранной стране города.​​ указали в скобках​ разделе «Текстовые» на​​B7​​ Сортировка в случайном​​или времени года. Формула =ВЫБОР(2;»зима»;»весна»;»лето»;»осень») вернет​​ Индекс можно ввести​ столбце A сравнивается​​ B1 мы создали​​ первую очередь следует​Как в Excel выбрать​ строки таблицы –​

Связанный выпадающий список в Excel

​ – A6:A18) значения​ таблицы по условию.​Что же делает эта​Откроется диалоговое окно​ диапазоны и сделаем​ Думаю, это понятно?​ этой функции где​ закладке «Формулы» в​(см. файл примера).​ порядке списка ЧИСЛОвых​ весна.​ формулой или ссылкой​ со значением в​

​ выпадающих список фамилий​ подготовить содержание для​ первое минимальное значение​ B5, то есть​ соответственные определенным числам.​ Допустим мы хотим​ формула? Она ищет​Data Validation​ так, чтобы эти​Итак, давайте начнём наш​​ и что искать​​ «Библиотеке функций».​​Запишем громоздкую формулу.​​ значений в MS​Можно воспользоваться этой функцией​ на ячейку, содержащую​​ ячейке B1. Это​​ клиентов.​

Связанный выпадающий список в Excel

​ выпадающего списка. Нам​​ кроме нуля:​​ число 5. Это​ ИНДЕКС работает с​ узнать первый самый​​ значение из ячейки​​(Проверка вводимых значений).​

Связанный выпадающий список в Excel

​ связанные выпадающие списки​​ простой пример с​​ – найти тире​​У нас такая​​=ЕСЛИ(B7>ДЛСТР(A7)-ДЛСТР(ПОДСТАВИТЬ(A7;» «;»»));​ EXCEL);​ для склонения слов,​​ число в диапазоне​​ позволяет найти уникальные​Примечание. Если данные для​ нужны все Фамилии​

​Как легко заметить, эти​

​ делается потому, что​​ учетом критериев определённых​​ дешевый товар на​B1​

Связанный выпадающий список в Excel

​Мы хотим дать пользователю​ работали во всех​ того, как можно​

​ в ячейке А2).​ таблица.​ПРАВСИМВ(A7;ДЛСТР(A7)-ПОИСК(«^^»;ПОДСТАВИТЬ(A7;» «;»^^»;ДЛСТР(A7)-ДЛСТР(ПОДСТАВИТЬ(A7;» «;»»)))));​формулы =ИНДЕКС($A$6:$A$12;РАНГ(C6;$C$6:$C$12)) в ячейке​ например, слова Час:​​ от 1 до​​ значения в таблице​ выпадающего списка находятся​ клиентов из столбца​​ формулы отличаются между​​ функция ИНДЕКС работает​​ во втором (номер​​ рынке из данного​в списке стран​ на выбор список​​ версиях Excel. Следующий​​ создать связанный (или​

Связанный выпадающий список в Excel

​В формуле указали​​Первый вариант.​​ЕСЛИ(B7=1;ПСТР(A7;1;ПОИСК(«^^»;ПОДСТАВИТЬ(A7;» «;»^^»;1))-1);​

Связанный выпадающий список в Excel

​D6​ 0 часов, 1​ 254;​ Excel. Если данные​​ на другом листе,​​ A, без повторений.​​ собой только функциями​​ с номерами внутри​ строки внутри таблицы)​​ прайса:​​ и возвращает соответствующий​ вариантов, поэтому в​ шаг – создать​ зависимый) выпадающий список​ «+1» — это​​Как сделать выбор в​​ПСТР(A7;ПОИСК(«^^»;ПОДСТАВИТЬ(A7;» «;»^^»;B7-1))+1;​и =ИНДЕКС($A$6:$A$12;РАНГ(C7;$C$6:$C$12)) в​ час, 2 часа,​Если номер_индекса равен 1,​ совпадают, тогда формула​ то лучше для​Перед тем как выбрать​​ МИН и МАКС​​ таблицы, а не​ и третьем (номер​Автоматическую выборку реализует нам​ индекс, который затем​ поле​ именованные диапазоны для​ в Excel? В​ первый знак после​ ячейке​​ПОИСК(«^^»;ПОДСТАВИТЬ(A7;» «;»^^»;B7))-ПОИСК(«^^»;ПОДСТАВИТЬ(A7;» «;»^^»;B7-1))-1)))​​ ячейке​ …​ то функция ВЫБОР()​​ возвращает значение ИСТИНА​​ такого диапазона присвоить​ уникальные значения в​ и их аргументами.​​ с номерами рабочего​​ столбца в таблице)​ формула, которая будет​​ использует функция​​Allow​ наших списков. На​ ячейке​ тире.​Excel.​Перед применением формулы убедитесь,​D7​=»час»&ВЫБОР(A17+1;»ов»;»»;»а»;»а»;»а»;»ов»)​ возвращает значение1; если​ и для целой​

​ имя и указать​
​ Excel, подготовим данные​

​Скачать пример выборки из​ листа Excel. В​ аргументах. Так как​​ обладать следующей структурой:​​CHOOSE​(Тип данных) выберите​ вкладке​B1​​«255» — это​​Нам нужно из​ что в строке​вернут 2 случайных​

​Ссылочная форма​ он равен 2,​ строки автоматически присваивается​

Связанный выпадающий список в Excel

​ его в поле​ для выпадающего списка:​ таблицы в Excel.​ тоже время функция​ наша исходная таблица​​=ИНДЕКС(диапазон_данных_для_выборки;МИН(ЕСЛИ(диапазон=МИН(диапазон);СТРОКА(диапазон)-СТРОКА(заголовок_столбца);””)))​​(ВЫБОР), чтобы выбрать​List​Formulas​мы будем выбирать​

Связанный выпадающий список в Excel

​ количество символов, которые​ ячейки A1 выбрать​ нет лишних пробелов.​ текстовых значения из​Функция ВЫБОР() может возвращать​ возвращается значение2 и​ новый формат. Чтобы​ «Источник:». В данном​Выделите первый столбец таблицы​

​Теперь Вас ни что​ СТРОКА умеет возвращать​
​ A6:A18 имеет только​
​В месте «диапазон_данных_для_выборки» следует​

​ 1-й, 2-й или​

office-guru.ru

Выборка значений из таблицы Excel по условию

​(Список). Это активирует​(Формулы) есть команда​ страну, а в​ могут быть в​ и перенести в​ Это можно сделать​ исходного списка.​ ссылку на диапазон​ так далее;​ формат присваивался для​ случае это не​ A1:A19.​ не ограничивает. Один​ только номера строк​ 1 столбец, то​ указать область значений​ 3-й именованный диапазон.​ поле​

Как сделать выборку в Excel по условию

​Name Manager​ ячейке​ ячейке. Это значит,​ ячейку В1 буквы​ функцией СЖПРОБЕЛЫ(). Формула​Функция СЛЧИС() пересчитывает свое​ ячеек. Рассмотрим пример​Если номер_индекса меньше 1​ целой строки, а​

Прайс продуктов.

​ обязательно, так как​Выберите инструмент: «ДАННЫЕ»-«Сортировка и​ раз разобравшись с​

​ листа. Чтобы не​

​ третий аргумент в​ A6:A18 для выборки​Вот так будет выглядеть​Source​(Диспетчер имён). Нажав​B2​ что в ячейке​ нашего кода –​ позволяет выбрать любое​ значение после каждого​ суммирования итогов продаж,​ или больше, чем​ не только ячейке​ у нас все​ фильтр»-«Дополнительно».​ принципами действия формул​ получилось смещение необходимо​ функции ИНДЕКС мы​ из таблицы (например,​

​ наш второй раскрывающийся​(Источник), где необходимо​ на нее, откроется​– принадлежащий ей​ А2 отобразится столько​ АВ. Нажимаем на​ слово из строки​ ввода нового значения​ для заданного пользователем​ номер последнего значения​ в столбце A,​

​ данные находятся на​В появившемся окне «Расширенный​ в массиве Вы​ сопоставить порядок номеров​ не указываем.​

​ текстовых), из которых​ список:​

Условие выбрать первое минимальное.

​ указать имя диапазона​ диалоговое окно​ город, как на​ символов, цифр, букв,​ ячейку В1 и​ (третье, шестое, восьмое​ в любую ячейку​

​ квартала. Пусть имеется​

Как работает выборка по условию

​ в списке, то​ мы используем смешанную​ одном рабочем листе.​ фильтр» включите «скопировать​ сможете легко модифицировать​ строк листа и​Чтобы вычислить номер строки​ функция ИНДЕКС выберет​В результате мы получим​ со странами. Введите​Name Manager​ примере:​ сколько стоит в​ вызываем диалоговое окно​ и т.п.).​ листа (или изменения​ таблица продаж по​ функция ВЫБОР возвращает​ ссылку в формуле​Выборка ячеек из таблицы​ результат в другое​

​ их под множество​ таблицы с помощи​ таблицы напротив наименьшего​ одно результирующие значение.​ два связанных (или​ в этом поле​(Диспетчер имён).​Для начала нужно создать​

​ ячейке А2 после​ функции. Заполняем его​Вообще, хранить несколько текстовых​ значения ячейки) или​ кварталам.​ значение ошибки #ЗНАЧ!​ =$A4.​ по условию в​ место», а в​ условий и быстро​ вычитанием разницы. Например,​ числа в смежном​ Аргумент «диапазон» означает​ зависимых) выпадающих списка.​ «=Country» и жмите​Нажмите кнопку​ базу данных. На​ тире. Это удобно,​ так.​ значений в одной​ нажатии клавиши​

​В ячейку​Если номер_индекса представляет собой​acid26sk​ Excel:​ поле «Поместить результат​ решать много вычислительных​ если таблица находится​ диапазоне B6:B18 и​ область ячеек с​ Если мы выбираем​ОК​New​ втором листе я​ когда стоит разное​Пояснение.​ ячейке MS EXCEL​F9​А33​ дробь, то он​: Как сделать выбор​Выделите табличную часть исходной​ в диапазон:» укажите​ задач.​ на 5-ой строке​ использовать его в​ числовыми значениями, из​ страну​. Теперь нам нужно​(Создать), чтобы добавить​ занес список стран,​ количество символов в​В строке «Текст»​ неправильно, отсюда и​.​пользователь вводит номер​ усекается до меньшего​ даты в ячейке?​ таблицы взаиморасчетов A4:D21​ $F$1.​Если Вы работаете с​ листа значит каждая​ качестве значения для​

​ которых следует выбрать​France​ сделать второй раскрывающийся​ новый именованный диапазон.​ которые хочу дать​ ячейках.​ указываем ячейку, из​ возникают такого рода​Исходный список может содержать​ квартала (индекс для​ целого;​Nic70y​ и выберите инструмент:​Отметьте галочкой пункт «Только​ большой таблицей и​ строка таблицы будет​ второго аргумента, применяется​ первое наименьшее число.​, в связанном списке​ список, чтобы пользователи​

Как выбрать значение с наибольшим числом в Excel

​ Откроется диалоговое окно​ пользователям на выбор​Ещё варианты.​ которой нужно выбрать​ задачи, имеющие громоздкие​ совершенно произвольные значения​ функции ВЫБОР()). В​сами значения​: Это как? Выбор​

Первое максимальное значение.

​ «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило»-«Использовать​ уникальные записи» и​ вам необходимо выполнить​ на 5 меньше​ несколько вычислительных функций.​ В аргументе «заголовок_столбца»​

​ у нас будут​Максимальное значение по условию.

​ могли выбрать город.​New Name​ в первом раскрывающемся​

Больше чем ноль.

​Ниже в таблице​ часть данных.​ решения (см. Советы​ (текст, числа, даты),​ качестве аргументов указаны​

​- ​ из чего?​

​ формулу для определения​ нажмите ОК.​ поиск уникальных значений​ чем соответственная строка​Функция ЕСЛИ позволяет выбрать​ для второй функции​ города только из​ Мы поместим этот​(Создание имени).​ списке, а в​

exceltable.com

Как сделать выборку в Excel из списка с условным форматированием

​ мы привели несколько​«Начальная позиция» -​ по построению таблиц​ т.к. функция ИНДЕКС()​ 4 диапазона для​значение1;значение2; … могут быть числами,​acid26sk​ форматируемых ячеек».​В результате мы получили​ в Excel, соответствующие​ листа.​ значение из списка​ СТРОКА, следует указать​ Франции.​ раскрывающийся список в​В поле​ соседнем столбце указал​ вариантов выбора данных​ здесь пишем порядковый​ в MS EXCEL).​ выводит значение ячейки​ каждого квартала. При​ текстовыми строками и​: Ну я хочу​Чтобы выбрать уникальные значения​ список данных с​ определенному запросу, то​После того как будут​ по условию. В​ ссылку на ячейку​

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

​Из этой статьи Вы​ ячейку​Name​ числовой индекс, который​

История взаиморасчетов.

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

​ узнали, как можно​B2​(Имя) введите имя​ соответствует одному из​

  1. ​ формуле можно указать​ цифры) с которого​
  2. ​ воспользоваться инструментом Текст-По-Столбцам​ его позиции в​Дополнительно.
  3. ​ будет подсчитана сумма​ ячеек. Если в​ на ячейку увидел​ поле ввода введите​ без повторений).​ Но иногда нам​ значения и сопоставлены​Поместить результат в диапазон.
  4. ​ указано где проверяется​ который содержит диапазон​ сделать простейшие связанные​

Только уникальные записи.

​. А теперь внимание​Country​ списков городов. Списки​ любой знак, вместо​

​ нужно выбирать данные.​

​ (Данные/ Работа с​ списке.​ продаж из диапазона​ качестве значений введены​ календарик и выбрал​ формулу: =$A4=$B$1 и​​

Вставить 2 строки.

​ нужно выделить все​ все номера строк​ каждая ячейка в​ числовых значений.​

​ выпадающие списки в​ – фокус! Нам​для нашего первого​ городов располагаются правее​ «тире».​

​ Мы выбираем первые​ данными), позволяющему, разделить​Организовать выбор одного случайного​

  1. ​А27:А29​ конкретные значения, то​ дату на нем,​ нажмите на кнопку​Проверка данных.
  2. ​Теперь нам необходимо немного​ строки, которые содержат​ таблицы функция МИН​ диапазоне B6:B18 на​Естественно эту формулу следует​Источник.
  3. ​ Microsoft Excel. Вы​ нужно проверить содержимое​ именованного диапазона, а​

выпадающих список.

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

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

​D​ мы указали пропуск​ э. указали в​

  1. ​ несколько строк.​ — проще чем​ -​ из этих значений​ прописалась​ одинаковые ячейки цветом.​Создать правило. Использовать формулу.
  2. ​ таблицу. Выделите первые​ отношению к другим​ строки. Эта же​ значения: ЕСЛИB6:B18=МИНB6:B18. Таким​ Поэтому для подтверждения​ простой пример и​ страны (ячейка B1),​Refers to​,​ (» «).​

Зеленая заливка.

​ начальной позиции число​

Готово.

​Можно несколькими способами​ 2.​B27:B29​ в зависимости от​acid26sk​ Например, зеленым. И​ 2 строки и​ строкам. В этом​ строка будет содержать​ способом в памяти​ ее ввода следует​ использовать его для​ чтобы получить индекс​(Диапазон) выберите тот,​F​В Excel имеются​ «1».​в​

​Формула =ИНДЕКС(A8:A14;СЛУЧМЕЖДУ(1;СЧЁТЗ(A8:A14))) сначала генерирует​и т.д.​ индекса, а если​

​: или типо календарика​ нажмите ОК на​ выберите инструмент: «ГЛАВНАЯ»-«Ячейки»-«Вставить»​ случаи следует использовать​ первое наименьшее число,​ программы создается массив​ нажимать не просто​ решения реальных задач.​ соответствующий базе данных​ в котором хранится​и​ огромные возможности сделать​А в строке​Excel разделить текст по​ случайное целое число​В файле примера также​ в качестве значений​Nic70y​ всех открытых окнах.​ или нажмите комбинацию​ условное форматирование, которое​ которое встречается в​

exceltable.com

Как сделать выбор даты в ячейке? (Формулы)

​ из логических значений​​ клавишу Enter, а​Урок подготовлен для Вас​

​ с городами. Если​​ список стран:​H​

​ разнообразные графики, диаграммы,​​ «Количество знаков» поставили​ ячейкам​ от 1 до​ имеются другие примеры,​ введены ссылки на​: Почитайте тут: http://www.excelworld.ru/forum/2-3852-1​Готово!​

​ горячих клавиш CTRL+SHIFT+=.​​ ссылается на значения​

​ столбце B6:B18. На​​ ИСТИНА и ЛОЖЬ.​

excelworld.ru

​ целую комбинацию клавиш​

Skip to content

Как извлечь текст из ячейки при помощи функции ПСТР и специальных инструментов

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

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

  • Синтаксис и особенности
  • Если 2 слова — извлекаем имя и фамилию
  • Как получить текст между двумя определенными символами
  • Как извлечь любое по счету слово
  • Получаем слово с нужными буквами или символами
  • Как заставить ПСТР возвращать число?
  • Использование регулярных выражений для извлечения части текста
  • Как извлечь текст из ячейки с помощью Ultimate Suite

Cинтаксис.

Функция ПСТР возвращает указанное количество знаков, начиная с указанной вами позиции.

Функция Excel ПСТР имеет следующие аргументы:

ПСТР(текст; начальная_позиция; количество_знаков)

Где текст — это исходная текстовая строка. Далее следует позиция первого символа, который вы хотите извлечь, и количество их для извлечения.

Все 3 аргумента обязательны.

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

=ПСТР(A2;17;6)

Результат может выглядеть примерно так:

5 вещей, которые вы должны знать о функции Excel ПСТР

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

  1. Функция ПСТР всегда возвращает текстовую строку, даже если извлеченная подстрока содержит только цифры. Это может иметь большое значение, если вы хотите использовать результат формулы ПСТР в других вычислениях. Чтобы преобразовать цифры в число, применяйте ПСТР в сочетании с функцией ЗНАЧЕН (VALUE в английской версии), как показано в этом примере. (ссылка на последний раздел).
  2. Когда начальная позиция больше, чем общая длина исходного текста, формула Excel ПСТР возвращает пустое значение («»).
  3. Если начальная позиция  меньше 1, формула ПСТР возвращает ошибку #ЗНАЧ!.
  4. Когда третий аргумент меньше 0 (отрицательное число), формула ПСТР возвращает ошибку #ЗНАЧ!. Если количество знаков для извлечения равно 0, выводится пустая строка (пустая ячейка).
  5. В случае, если сумма начальной позиции и количества знаков превышает общую длину исходного текста, функция ПСТР в Excel возвращает подстроку начиная с начальной позиции и до последнего символа.

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

Как извлечь имя и фамилию.

Если у вас была возможность прочитать наши недавние уроки, вы уже знаете, как вытащить имя с помощью функции ЛЕВСИМВ и получить фамилию с помощью ПРАВСИМВ.  Но, как это часто бывает в Excel, одно и то же можно сделать разными способами.

Получаем имя.

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

=ПСТР(A2;1;ПОИСК(» «;A2)-1)

ПОИСК используется для сканирования исходного значения на предмет пробела (» «) и возврата его позиции, из которой вы вычитаете 1, чтобы избежать пробелов после имени. Затем вы используете ПСТР, чтобы вернуть подстроку, начинающуюся с первого знака и заканчивая предшествующим пробелу, таким образом извлекая первое имя.

Получаем фамилию.

Чтобы извлечь фамилию из A2, используйте эту формулу:

=СЖПРОБЕЛЫ(ПСТР(A2;ПОИСК(» «;A2);ДЛСТР(A2)))

Опять же, вы используете ПОИСК, чтобы определить начальную позицию (пробел). Нам не нужно точно рассчитывать конечную позицию (как вы помните, если вместе взятые начальная позиция и количество символов больше, чем общая длина текста, возвращаются просто все оставшиеся). Итак, в аргументе количество символов вы просто указываете общую первоначальную длину , возвращаемую функцией ДЛСТР . Впрочем, вместо этого вы можете просто ввести число, представляющее самую длинную фамилию, которую вы ожидаете найти, например 100. Наконец,  СЖПРОБЕЛЫ удаляет лишние интервалы, и вы получаете следующий результат:

Как выделить подстроку между двумя разделителями.

Продолжим предыдущий пример. А если, помимо имени и фамилии, ячейка A2 также содержит отчество, то как его извлечь?

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

  • Как и в предыдущем примере, используйте ПОИСК, чтобы определить позицию первого (» «), к которому вы добавляете 1, потому что вы хотите начать с символа, следующего за ним. Таким образом, вы получаете адрес начальной позиции: ПОИСК (» «; A2) +1
  • Затем вычислите позицию 2- го интервала, используя вложенные функции поиска, которые предписывают Excel начать поиск именно со 2-го:                                                  ПОИСК (» «; A2, ПОИСК (» «; A2) +1)

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

ПОИСК(» «; A2; ПОИСК(» «; A2) +1) — ПОИСК(» «; A2)

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

=ПСТР(A2;ПОИСК(» «;A2)+1;ПОИСК(» «;A2;ПОИСК(» «;A2)+1)-ПОИСК(» «;A2)-1)

На следующем скриншоте показан результат:

Аналогичным образом вы можете извлечь текст между любыми другими разделителями:

ПСТР( строка ; ПОИСК( разделитель ; строка ) +1; ПОИСК( разделитель ; строка ; ПОИСК( разделитель ; строка ) +1) — ПОИСК( разделитель ; строка ) -1)

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

=ПСТР(A2;ПОИСК(«, «;A2)+1;ПОИСК(«, «;A2;ПОИСК(«, «;A2)+1)-ПОИСК(«, «;A2)-1)

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

Как получить N-е слово из текста.

Этот пример демонстрирует оригинальное использование сложной формулы ПСТР в Excel, которое включает 5 различных составных частей:

  • ДЛСТР — чтобы получить общую длину.
  • ПОВТОР — повторение определенного знака заданное количество раз.
  • ПОДСТАВИТЬ — заменить один символ другим.
  • ПСТР — извлечь подстроку.
  • СЖПРОБЕЛЫ — удалить лишние интервалы между словами.

Общая формула выглядит следующим образом:

СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ( строка ; » «; ПОВТОР (» «; ДЛСТР( строка ))); ( N -1) * ДЛСТР( строка ) +1; ДЛСТР( строка )))

Где:

  • Строка — это исходный текст, из которого вы хотите извлечь желаемое слово.
  • N – порядковый номер слова, которое нужно получить.

Например, чтобы вытащить второе слово из A2, используйте это выражение:

=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A$2;» «;ПОВТОР(» «;ДЛСТР($A$2))); (2-1)*ДЛСТР($A$2)+1; ДЛСТР($A$2)))

Или вы можете ввести порядковый номер слова, которое нужно извлечь (N) в какую-либо ячейку, и указать эту ячейку в формуле, как показано на скриншоте ниже:

Как работает эта формула?

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

  • ПОДСТАВИТЬ и ПОВТОР заменяют каждый пробел в тексте несколькими. Количество этих дополнительных вставок равно общей длине исходной строки: ПОДСТАВИТЬ($A$2;» «;ПОВТОР(» «;ДЛСТР($A$2)))

Вы можете представить себе промежуточный результат как «астероиды» слов, дрейфующих в пространстве, например: слово1-пробелы-слово2-пробелы-слово3-… Эта длинная строка передается в текстовый аргумент ПСТР.

  • Затем вы определяете начальную позицию для извлечения (первый аргумент), используя следующее уравнение: (N-1) * ДЛСТР(A1) +1. Это вычисление возвращает либо позицию первого знака первого слова, либо, чаще, позицию в N-й группе пробелов.
  • Количество букв и цифр для извлечения (второй аргумент) — самая простая часть — вы просто берете общую первоначальную длину: ДЛСТР(A2).
  • Наконец, СЖПРОБЕЛЫ избавляется от начальных и конечных интервалов в извлечённом тексте.

Приведенная выше формула отлично работает в большинстве ситуаций. Однако, если между словами окажется 2 или более пробелов подряд, это даст неверные результаты (1). Чтобы исправить это, вложите еще одну функцию СЖПРОБЕЛЫ в ПОДСТАВИТЬ, чтобы удалить лишние пропуски между словами, оставив только один, например:

=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ($A$2);» «; ПОВТОР(» «;ДЛСТР($A$2))); (B2-1)*ДЛСТР($A$2)+1; ДЛСТР($A$2)))

Следующий рисунок демонстрирует улучшенный вариант (2) в действии:

Если ваш исходный текст содержит несколько пробелов между словами, а также очень большие или очень короткие слова, дополнительно вставьте СЖПРОБЕЛЫ в каждое ДЛСТР, чтобы вы были застрахованы от ошибки:

=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ($A$2);» «; ПОВТОР(» «;ДЛСТР(СЖПРОБЕЛЫ ($A$2)))); (B2-1)*ДЛСТР(СЖПРОБЕЛЫ($A$2))+1; ДЛСТР(СЖПРОБЕЛЫ($A$2))))

Я согласен с тем, что это выглядит немного громоздко, но зато безупречно обрабатывает все возможные варианты.

Извлекаем слово, содержащее определенный символ.

В этом примере показана еще одна нестандартная формула Excel ПСТР, которая извлекает слово, содержащее определенную букву или цифру, из любого места:

СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ ( строка , » «, ПОВТОР(» «, 99)), МАКС(1, НАЙТИ( символ , ПОДСТАВИТЬ( строка , » «, ПОВТОР(» «, 99))) — 50), 99))

Предполагая, что исходный текст находится в ячейке A2, и вы хотите получить слово, содержащее символ «$» (цена), выражение принимает следующую форму:

=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(A2;» «;ПОВТОР(» «;99)); МАКС(1;НАЙТИ(«$»;ПОДСТАВИТЬ(A2;» «;ПОВТОР(» «;99)))-50);99))

Аналогичным образом вы можете извлекать адреса электронной почты (на основе знака «@»), имена веб-сайтов (на основе «www») и так далее.

Теперь разберём пошагово:

Как и в предыдущем примере, ПОДСТАВИТЬ и ПОВТОР превращают каждый пробел в исходном тексте в несколько, точнее, в 99.

НАЙТИ находит позицию нужного символа (в данном примере $), из которой вы вычитаете 50. Это возвращает вас на 50 позиций назад и помещает где-то в середине блока из 99 пробелов, который предшествует слову, содержащему указанный символ.

МАКС используется для обработки ситуации, когда нужное значение появляется в начале исходного текста. В этом случае результат ПОИСК() — 50 будет отрицательным числом, а МАКС(1, ПОИСК() — 50) заменяет его на 1.

С этой начальной точки ПСТР отбирает следующие 99 знаков и возвращает интересующее нас слово, окруженное множеством пробелов. Как обычно, СЖПРОБЕЛЫ помогает избавиться от лишних из них, оставив только один.

Совет. Если извлекаемый отрезок очень большой, замените 99 и 50 на более крупные числа, например 1000 и 500.

Как заставить ПСТР возвращать число?

Как и другие текстовые функции, Excel ПСТР всегда возвращает текст, даже если он содержит только цифры и очень похож на число. Вы можете убедиться с этом, взглянув на пример чуть выше, когда мы получили число «20%» как текст.

Чтобы преобразовать результат в число, просто передайте полученный результат в функцию ЗНАЧЕН (VALUE в английской версии), которая преобразует текстовое значение, состоящее из цифр, в число.

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

=ЗНАЧЕН(ПСТР(A2;7;3))

На скриншоте ниже показан результат. Обратите внимание, что числа с выравниванием по правому краю помещены в столбец B, в отличие от исходных текстовых значений с выравниванием по левому краю в столбце A:

Тот же подход работает и для более сложных случаев. В приведенном выше примере, предполагая, что коды ошибок имеют переменную длину, вы можете извлечь их с помощью ПСТР, которая получает подстроку между двумя разделителями, вложенную в ЗНАЧЕН:

=ЗНАЧЕН(ПСТР(A2;ПОИСК(«:»;A2)+1;ПОИСК(«:»;A2;ПОИСК(«:»;A2)+1)-ПОИСК(«:»;A2)-1))

Вот как можно использовать функцию ПСТР в Excel. 

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

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

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

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

Вот пример: из наименования товара — Коммутатор Optimus U1E-8F/1G/1S, нужно извлечь номер модели. Поскольку этот номер находится в конце наименования, то будем искать то, что записано после последнего пробела.

= RegExpExtract(A1; «([^s.]+)$»)

В результате получим U1E-8F/1G/1S, что и требовалось.

Как извлечь текст из ячейки с помощью Ultimate Suite

Как вы только что видели, Microsoft Excel предоставляет набор различных функций для работы с текстовыми строками. Если вам нужно извлечь какое-то слово или часть текста из ячейки, но вы не уверены, какая функция лучше всего подходит для ваших нужд, передайте работу Ultimate Suite for Excel. Заодно не придётся возиться с формулами.

Вы просто переходите на вкладку Ablebits Data > Текст, выбираете инструмент Split Text и в выпадающем списке нажимаете Извлечь (Extract) :

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

  1. Укажите, сколько символов вы хотите получить из начала, конца или середины строки; или выберите извлечение всего текста до или после определенного символа.
  2. Щелкните Вставить результаты (Insert Results). Готово!

Кроме того, вы можете извлечь любое число символов с начала или в конце текста, из середины текста, между какими-то символами. Например, чтобы извлечь доменные имена из списка адресов электронной почты, вы выбираете чекбокс Все после текста (All after text) и вводите @ в поле рядом с ним. Чтобы извлечь имена пользователей, выберите переключатель Все до текста (All before text), как показано на рисунке ниже.

Помимо скорости и простоты, инструмент «Извлечь текст» имеет дополнительную ценность — он поможет вам изучить формулы Excel в целом и функции подстроки в частности. Как? Выбрав флажок Вставить как формула (Insert as formula)  в нижней части панели, вы убедитесь, что результаты выводятся в виде формул, а не просто как значения. Естественно, эти формулы вы можете использовать в других таблицах.

В этом примере, если вы выберете ячейки B2 и C2, вы увидите следующие формулы соответственно:

  • Чтобы извлечь имя пользователя:

=ЕСЛИОШИБКА(ЛЕВСИМВ(A2,ПОИСК(«@»,A2)-1),»»)

  • Чтобы извлечь домен:

=ЕСЛИОШИБКА(ПРАВСИМВ(A2, ДЛСТР(A2)- ПОИСК(«@»,A2) — ДЛСТР(«@») + 1),»»)

Сколько времени вам потребуется, чтобы самостоятельно составить эти выражения?  ;)

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

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

Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!

Как быстро посчитать количество слов в Excel В статье объясняется, как подсчитывать слова в Excel с помощью функции ДЛСТР в сочетании с другими функциями Excel, а также приводятся формулы для подсчета общего количества или конкретных слов в…
Как быстро извлечь число из текста в Excel В этом кратком руководстве показано, как можно быстро извлекать число из различных текстовых выражений в Excel с помощью формул или специального инструмента «Извлечь». Проблема выделения числа из текста возникает достаточно…
Как удалить пробелы в ячейках Excel Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов. В чем самая большая проблема с…
Функция СЖПРОБЕЛЫ — как пользоваться и примеры Вы узнаете несколько быстрых и простых способов, чтобы удалить начальные, конечные и лишние пробелы между словами, а также почему функция Excel СЖПРОБЕЛЫ (TRIM в английской версии)  не работает и как…
Функция ПРАВСИМВ в Excel — примеры и советы. В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
5 примеров с функцией ДЛСТР в Excel. Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество символов в ячейке Excel В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…

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

Описание

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

Создание образца листа

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

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

A

B

C

D

E

1

Имя

Правитель

Возраст

Поиск значения

2

Анри

501

Плот

Иванов

3

Стэн

201

19

4

Иванов

101

максималь

5

Ларри

301

составляет

Определения терминов

В этой статье для описания встроенных функций Excel используются указанные ниже условия.

Термин

Определение

Пример

Массив таблиц

Вся таблица подстановки

A2: C5

Превышающ

Значение, которое будет найдено в первом столбце аргумента «инфо_таблица».

E2

Просматриваемый_массив
-или-
Лукуп_вектор

Диапазон ячеек, которые содержат возможные значения подстановки.

A2: A5

Номер_столбца

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

3 (третий столбец в инфо_таблица)

Ресулт_аррай
-или-
Ресулт_вектор

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

C2: C5

Интервальный_просмотр

Логическое значение (истина или ложь). Если указано значение истина или опущено, возвращается приближенное соответствие. Если задано значение FALSE, оно будет искать точное совпадение.

ЛОЖЬ

Топ_целл

Это ссылка, на основе которой вы хотите основать смещение. Топ_целл должен ссылаться на ячейку или диапазон смежных ячеек. В противном случае функция СМЕЩ возвращает #VALUE! значение ошибки #ИМЯ?.

Оффсет_кол

Число столбцов, находящегося слева или справа от которых должна указываться верхняя левая ячейка результата. Например, значение «5» в качестве аргумента Оффсет_кол указывает на то, что верхняя левая ячейка ссылки состоит из пяти столбцов справа от ссылки. Оффсет_кол может быть положительным (то есть справа от начальной ссылки) или отрицательным (то есть слева от начальной ссылки).

Функции

LOOKUP ()

Функция Просмотр находит значение в одной строке или столбце и сопоставляет его со значением в той же позицией в другой строке или столбце.

Ниже приведен пример синтаксиса формулы подСТАНОВКи.

   = Просмотр (искомое_значение; Лукуп_вектор; Ресулт_вектор)


Следующая формула находит возраст Марии на листе «образец».

   = ПРОСМОТР (E2; A2: A5; C2: C5)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в векторе подстановки (столбец A). Формула затем соответствует значению в той же строке в векторе результатов (столбец C). Так как «Мария» находится в строке 4, функция Просмотр возвращает значение из строки 4 в столбце C (22).

Примечание. Для функции Просмотр необходимо, чтобы таблица была отсортирована.

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

Использование функции Просмотр в Excel

ВПР ()

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

Ниже приведен пример синтаксиса формулы ВПР :

    = ВПР (искомое_значение; инфо_таблица; номер_столбца; интервальный_просмотр)

Следующая формула находит возраст Марии на листе «образец».

   = ВПР (E2; A2: C5; 3; ЛОЖЬ)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в левом столбце (столбец A). Формула затем совпадет со значением в той же строке в Колумн_индекс. В этом примере используется «3» в качестве Колумн_индекс (столбец C). Так как «Мария» находится в строке 4, функция ВПР возвращает значение из строки 4 В столбце C (22).

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

Как найти точное совпадение с помощью функций ВПР или ГПР

INDEX () и MATCH ()

Вы можете использовать функции индекс и ПОИСКПОЗ вместе, чтобы получить те же результаты, что и при использовании поиска или функции ВПР.

Ниже приведен пример синтаксиса, объединяющего индекс и Match для получения одинаковых результатов поиска и ВПР в предыдущих примерах:

    = Индекс (инфо_таблица; MATCH (искомое_значение; просматриваемый_массив; 0); номер_столбца)

Следующая формула находит возраст Марии на листе «образец».


= ИНДЕКС (A2: C5; MATCH (E2; A2: A5; 0); 3)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Затем он будет соответствовать значению в той же строке в столбце C. Так как «Мария» находится в строке 4, формула возвращает значение из строки 4 в столбце C (22).

Обратите внимание Если ни одна из ячеек в аргументе «число» не соответствует искомому значению («Мария»), эта формула будет возвращать #N/А.
Чтобы получить дополнительные сведения о функции индекс , щелкните следующий номер статьи базы знаний Майкрософт:

Поиск данных в таблице с помощью функции индекс

СМЕЩ () и MATCH ()

Функции СМЕЩ и ПОИСКПОЗ можно использовать вместе, чтобы получить те же результаты, что и функции в предыдущем примере.

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

   = СМЕЩЕНИЕ (топ_целл, MATCH (искомое_значение; просматриваемый_массив; 0); Оффсет_кол)

Эта формула находит возраст Марии на листе «образец».

   = СМЕЩЕНИЕ (A1; MATCH (E2; A2: A5; 0); 2)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Формула затем соответствует значению в той же строке, но двум столбцам справа (столбец C). Так как «Мария» находится в столбце A, формула возвращает значение в строке 4 в столбце C (22).

Чтобы получить дополнительные сведения о функции СМЕЩ , щелкните следующий номер статьи базы знаний Майкрософт:
 

Использование функции СМЕЩ

Нужна дополнительная помощь?


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

Пусть Исходный список значений (например, перечень инструментов) находится в диапазоне

A10:A19

(см.

Файл примера

).

Задача

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

А. Найти значения, которые содержат критерий

Для удобства создадим

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

Список

.

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

Выведем в отдельный диапазон все значения Исходного списка, в которых

содержится

текст-критерий (например, слово

дрель

). Критерий вводится в ячейку

С6

.

Для создания списка, содержащего найденные значения, воспользуемся

формулой массива

:

=ИНДЕКС(Список; НАИМЕНЬШИЙ( ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($C$6;Список);0)>0;СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))

Алгоритм работы формулы следующий (для просмотра промежуточных шагов работы формулы воспользуйтесь

клавишей

F9

):

  • Функция

    ПОИСК()

    , перебирая элементы исходного списка, определяет, содержится ли в нем значение-критерий. Если значение не содержится, то возвращается ошибка #ЗНАЧ! В противном случае возвращается числовое значение, соответствующее номеру начальной позиции вхождения критерия в значение из списка (здесь нам не важен номер позиции, важно, что это число);
  • Функция

    ЕСЛИОШИБКА()

    используется для подавления ошибки #ЗНАЧ! заменяя ее на число 0;
  • Функция

    ЕСЛИ()

    заменяет числовые значения, возвращенные функцией

    ПОИСК()

    , на номер позиции значения в списке. Если значение =0 (соответствует ошибке #ЗНАЧ!), то возвращается число 30. В принципе, вместо 30 можно указать любое число, которое больше номера последней заполненной позиции Исходного списка (это нужно для правильной сортировки функцией

    НАИМЕНЬШИЙ()

    );
  • Функция

    НАИМЕНЬШИЙ()

    сортирует массив номеров строк по возрастанию;
  • Функция

    ДВССЫЛ()

    возвращает

    массив последовательных чисел

    ;

  • Функция

    ИНДЕКС()

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

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

формулу массива

нужно распространять на диапазон той же размерности, что и исходный список. Вышеуказанная

формула массива будет возвращать несколько значений

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

С10:С19

, ввести формулу в

Строке формул

и нажать

CRTL+SHIFT+ENTER

.

Для скрытия ошибок #ССЫЛКА!, возвращаемой формулой массива, к диапазону

С10:С19

применено правило

Условного форматирования

.

Б. Найти значения, которые совпадают с критерием (точное совпадение)

В этом случае будут выведены все значения, которые совпадают с критерием (без

учета РЕгиСТра

). Критерий вводится в ячейку

E

6

.

Для создания списка, содержащего найденные значения, воспользуемся

формулой массива

:

=ИНДЕКС(Список; НАИМЕНЬШИЙ( ЕСЛИ($E$6=Список;СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))

B. Найти значения, которые начинаются с критерия

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

G

6

.

Для создания списка, содержащего найденные значения, воспользуемся

формулой массива

: =

ИНДЕКС(Список;НАИМЕНЬШИЙ( ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($G$6;Список);0)=1;СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))

Г. Найти значения, которые заканчиваются на критерий

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

I

6

.

Для создания списка, содержащего найденные значения, воспользуемся

формулой массива

:

=ИНДЕКС(Список;НАИМЕНЬШИЙ( ЕСЛИ($I$6=ПРАВСИМВ(Список;ДЛСТР($I$6));СТРОКА(Список)-СТРОКА($A$9);30); СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))


СОВЕТ:

О поиске текстовых значений с использованием

подстановочных знаков

читайте в статье

Поиск текстовых значений в списках. Часть2. Подстановочные знаки

. В статье

Выделение ячеек c ТЕКСТом с применением Условного форматирования

приведено решение аналогичной задачи с использованием

Условного форматирования

.

Поиск нужных данных в диапазоне

Как использовать функцию ВПР (VLOOKUP) для поиска и выборки нужных значений из списка мы недавно разбирали. Если вы еще с ней не знакомы — загляните сюда, не пожалейте пяти минут, чтобы сэкономить себе потом несколько часов.

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

index1.gif

Необходимо определить регион поставки по артикулу товара, набранному в ячейку C16.

Задача решается при помощи двух функций:

=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)

Функция ПОИСКПОЗ ищет в столбце D1:D13 значение артикула из ячейки C16. Последний аргумент функции 0 — означает поиск точного (а не приблизительного) соответствия. Функция выдает порядковый номер найденного значения в диапазоне, т.е. фактически номер строки, где найден требуемыый артикул.

Функция ИНДЕКС выбирает из диапазона A1:G13 значение, находящееся на пересечении заданной строки (номер строки с артикулом выдает функция ПОИСКПОЗ) и столбца (нам нужен регион, т.е. второй столбец). 

Ссылки по теме

  • Использование функции ВПР (VLOOKUP) для поиска и подстановки значений.
  • Улучшенная версия функции ВПР (VLOOKUP)
  • Многоразовый ВПР

Самый быстрый ВПР

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

В этом случае, правильный выбор функции, применяемой для связывания таблиц, играет решающую роль — разница в производительности между ними, как мы увидим далее, может составлять более 20 раз!

Когда я писал свою первую книжку пять лет назад, то уже делал сравнительный скоростной тест различных способов поиска и подстановки данных функциями ВПР, ИНДЕКС+ПОИСКПОЗ, СУММЕСЛИ и др. С тех пор сменилось три версии Office, появились надстройки Power Query и Power Pivot, кардинально изменившие весь процесс работы с данными. А в прошлом году ещё и обновился вычислительный движок Excel, получив поддержку динамических массивов и новые функции ПРОСМОТРХ, ФИЛЬТР и т.п.

Так что пришла пора снова взяться за секундомер и выяснить — кто же самый быстрый. Ну и, заодно, проверить — какие способы поиска и подстановки данных в Excel вы знаете 🙂

Подопытный кролик

Тест будем проводить на следующем примере:

Исходный пример

Это книга Excel с одним листом, где расположены две таблицы: отгрузки (500 000 строк) и прайс-лист (600 строк). Наша задача — подставить цены из прайс-листа в таблицу отгрузок. Для каждого способа будем вводить формулу в ячейку С2 и копировать вниз на весь столбец, замеряя время, которое потребуется Excel, чтобы просчитать весь столбец из полумиллиона ячеек. Полученные значения, безусловно, зависят от множества факторов (поколение процессора, объем оперативной памяти, текущая загрузка системы, версия Office и т.д.), но нам важны не конкретные цифры, а, скорее, их сравнение друг с другом. Важно понимать прожорливость каждого способа и их ограничения.

Способ 1. ВПР

Сначала — классика 🙂 Легендарная функция вертикального просмотра — ВПР (VLOOKUP) , которая приходит в голову первой в подобных ситуациях:

ВПР

  • B2 — искомое значение, т.е. название товара, который мы хотим найти в прайс-листе
  • $G$2:$H$600 — закреплённая знаками доллара (чтобы не сползала при копировании формулы вниз) абсолютная ссылка на прайс
  • 2 — номер столбца в прайс-листе, откуда мы хотим взять цену
  • 0 или ЛОЖЬ — переключение в режим поиска точного соответствия, когда любое некорректное название товара (например, ФОНЕРА) в столбце B в таблице отгрузок приведёт к появлению ошибки #Н/Д как результата работы функции.

Время вычисления = 4,3 сек.

Способ 2. ВПР с выделением столбцов целиком

Многие пользователи, применяя ВПР, во втором аргументе этой функции, где нужно задать поисковую таблицу (прайс), выделяют не ограниченный диапазон ( $G$2:$H$600 ), а сразу столбцы G:H целиком. Это проще, быстрее, позволяет не думать про F4 и то, что завтра прайс-лист может быть на несколько строк больше. Формула в этом случае выглядит тоже компактнее:

ВПР с выделением столбцов целиком

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

Время вычисления = 14,5 сек.

Способ 3. ИНДЕКС и ПОИСКПОЗ

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

ИНДЕКС и ПОИСКПОЗ

Функция ИНДЕКС извлекает из заданного в первом аргументе диапазона (столбца $H$2:$H$600 с ценами в прайс-листе) содержимое ячейки с заданным номером. А номер этот, в свою очередь, определяется функцией ПОИСКПОЗ, у которой три аргумента:

  • Что нужно найти — название товара из B2
  • Где мы это ищем — столбец с названиями товаров в прайсе ( $G$2:$G$600 )
  • Режим поиска: 0 — точный, 1 или -1 — приблизительный с округлением в меньшую или большую сторону, соответственно.

Формула выходит чуть сложнее, но, при этом имеет несколько ощутимых преимуществ перед классической ВПР, а именно:

  • Не нужно отсчитывать номер столбца (как в третьем аргументе ВПР).
  • Можно извлекать данные, которые находятся левее столбца, где просходит поиск.

По скорости, однако же, этот способ проигрывает ВПР почти в два раза:

Время вычисления = 7,8 сек.

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

ИНДЕКС и ПОИСКПОЗ с выделением столбцов целиком

. то результат получается совсем печальный:

Время вычисления = 28,5 сек.

28 секунд, Карл! В 6 раз медленнее ВПР!

Способ 4. СУММЕСЛИ

Если нужно найти не текстовые, а именно числовые данные (как в нашем случае — цену), то вместо ВПР вполне можно использовать функцию СУММЕСЛИ (SUMIF) . Изначально она задумывалась как инструмент для выборочного суммирования данных по условию (найди и сложи мне все продажи кабелей, например), но можно заставить её искать нужный нам товар и в прайс-листе. Если грузы в нём не повторяются, то суммировать будет не с чем и эта функция просто выведет искомое значение:

СУММЕСЛИ

  • Первый аргумент СУММЕСЛИ — это диапазон проверяемых ячеек, т.е. названия товаров в прайсе ( $G$2:$G$600 ).
  • Второй аргумент ( B2 ) — что мы ищем.
  • Третий аргумент — диапазон ячеек с ценами $H$2:$H$600 , числа из которых мы хотим просуммировать, если в соседних ячейках проверяемого диапазона есть искомое значение.

Очевидным минусом такого подхода является то, что он работает только с числами. Также этот способ не удобен, если прайс-лист находится в отдельном файле — придется всё время держать его открытым, т.к. функция СУММЕСЛИ не умеет брать данные из закрытых книг, в отличие от ВПР, для которой это не проблема.

В плюсы же можно записать удобство при поиске сразу по нескольким столбцам — для этого идеально подходит более продвинутая версия этой функции — СУММЕСЛИМН (SUMIFS) . Скорость вычислений же, при этом, весьма посредственная:

Время вычисления = 12,8 сек.

При выделении столбцов целиком, т.е. использовании формулы вида =СУММЕСЛИ( G:G ; B2 ; H:H ) всё ещё хуже:

Время вычисления = 41,7 сек.

Это самый плохой результат в нашем тесте.

Способ 5. СУММПРОИЗВ

Этот подход сейчас встречается не часто, но всё ещё достаточно регулярно. Обычно так любят извращаться пользователи старой школы, ещё хорошо помнящие те времена, когда в Excel было всего 255 столбцов и 56 цветов 🙂

Суть этого метода заключается в использовании функции СУММПРОИЗВ (SUMPRODUCT) , изначально предназначенной для поэлементного перемножения нескольких диапазонов с последующим суммированием полученных произведений. В нашем случае, вместо одного из массивов будет выступать условие, а вторым будут цены:

СУММПРОИЗВ

Выражение ($G$2:$G$600=B2) , по сути, проверяет каждое название груза в прайс-листе на предмет соответствия искомому значению (ФАНЕРА ПР). Результатом каждого сравнения будет логическое значение ИСТИНА (TRUE ) или ЛОЖЬ (FALSE) , что в Excel интерпретируется как 1 и 0, соответственно. Последующее умножение этих нулей и единиц на цены оставит в живых цену только того товара, который нам, в данном случае, и нужен.

Эта формула является, по сути, формулой массива, но не требует нажатия обычного для них сочетания клавиш Ctrl + Shift + Enter , т.к. функция СУММПРОИЗВ поддерживает массивы уже сама по себе. Возможно, по этой же причине (формулы массива всегда медленнее, чем обычные) такой скорость пересчёта такой формулы — не очень:

Время вычисления = 11,8 сек.

  • Совместимость с любыми, самыми древними версиями Excel.
  • Возможность задавать сложные условия (и несколько)
  • Способность этой формулы работать с данными из закрытых файлов, если добавить перед ней двойное бинарное отрицание (два подряд знака «минус»). СУММЕСЛИМН таким похвастаться не может.

Способ 6. ПРОСМОТР

Ещё один относительно экзотический способ поиска и подстановки данных, наравне с ВПР — это использование функции ПРОСМОТР (LOOKUP) . Только не перепутайте её с новой, буквально, на днях появившейся функцией ПРОСМОТРХ (XLOOKUP) — про неё мы поговорим дальше особо. Функция ПРОСМОТР существовала в Excel начиная с самых ранних версий и тоже вполне может решить нашу задачу:

ПРОСМОТР

  • B2 — название груза, которое мы ищем
  • $G$2:$G$600 — одномерный диапазон-вектор (столбец или строка), где мы ищем совпадение
  • $H$2:$H$600 — такого же размера диапазон, откуда нужно вернуть найденный результат (цену)

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

  • Эта функция требует обязательной сортировки прайс-листа по возрастанию (алфавиту) и без этого не работает.
  • Если в таблице отгрузок искомое значение будет написано с опечаткой (например, АГ Е ДОЛ вместо АГИДОЛ), то функция ПРОСМОТР выдаст не ошибку #Н/Д, а цену для ближайшего предыдущего товара:

При работе с неидеальными данными в реальном мире это гарантированно создаст проблемы, как вы понимаете.

Скорость же вычислений у функции ПРОСМОТР (LOOKUP) весьма приличная:

Время вычисления = 7,6 сек.

Способ 7. Новая функция ПРОСМОТРХ

Эта функция пришла с одним из недавних обновлений пока только пользователям Office 365 и пока отсутствует во всех остальных версиях (Excel 2010, 2013, 2016, 2019). По сравнению с классической ВПР у этой функции есть масса преимуществ (упрощенный синтаксис, возможность искать не только сверху-вниз, возможность сразу задать значение вместо #Н/Д и т.д.) Формула для решения нашей задачи будет выглядеть в этом случае так:

ПРОСМОТРХ

Если не брать в расчёт необязательные 4,5,6 аргументы, то синтаксис этой функции полностью совпадает с её предшественником — функцией ПРОСМОТР (LOOKUP) . Скорость вычислений при тестировании на наши 500000 строк тоже оказалась аналогичной:

Время вычисления = 7,6 сек.

Почти в два раза медленнее, чем у ВПР, вместо которой Microsoft предлагает теперь использовать ПРОСМОТРХ. Жаль.

И, опять же, если полениться и выделить диапазоны в прайс-листе целыми столбцами:

ПРОСМОТРХ и выделение столбцов целиком

. то скорость падает до совершенно неприличных уже значений:

Время вычисления = 28,3 сек.

А если на динамических массивах?

Прошлогоднее (осень 2019) обновление вычислительного движка Microsoft Excel добавило ему поддержку динамических массивов (Dynamic Arrays), о которых я уже писал. Это принципиально новый подход к работе с данными, который можно использовать почти с любыми классическими функциями Excel. На примере ВПР это будет выглядеть так:

ВПР на динамических массивах

Разница с классическим вариантом в том, что первым аргументом ВПР здесь выступает не одно искомое значение (а формулу потом нужно копировать вниз на остальные строки), а сразу весь массив из полумиллиона грузов B2:B500000, цены для которых мы хотим найти. Формула при этом сама распространяется вниз, занимая требуемое количество ячеек.

Скорость пересчета в таком варианте меня, откровенно говоря, ошеломила — пауза между нажатием на Enter после ввода формулы и получением результатов почти отсутствовала.

Время вычисления = 1 сек.

Что интересно, и новая ПРОСМОТРХ, и старая ПРОСМОТР, и связка ИНДЕКС+ПОИСКПОЗ в таком режиме тоже были очень быстрыми — время вычислений не больше 1 секунды! Фантастика.

А вот олдскульные подходы на основе СУММПРОИЗВ и СУММЕСЛИ(МН) с динамическими массивами работать отказались 🙁

Что с умными таблицами?

Обрадовавшись фантастическим результатам, полученным на динамических массивах, я решил вдогон попробовать протестировать разницу в скорости при работе с обычными и «умными» таблицами. Я имею ввиду те самые «красивые таблицы», в которые вы можете преобразовать ваш диапазон с помощью команды Форматировать как таблицу на вкладке Главная (Home — Format as Table) или с помощью сочетания клавиш Ctrl + T .

Если предварительно превратить наши отгрузки и прайс в «умные» (по умолчанию они получат имена Таблица1 и Таблица2, соответственно), то формула с той же ВПР будет выглядеть как:

ВПР на умных таблицах

  • [@Груз] — ссылка на ячейку B2, означающая, в данном случае, что нужно взять значение из той же строки из столбца Груз текущей умной таблицы.
  • Таблица2 — ссылка на прайс-лист

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

Скорость же, как выяснилось, тоже вырастает очень значительно и примерно равна скорости работы на динамических массивах:

Время вычисления = 1 сек.

У меня есть подозрение, что дело тут не в самих «умных» таблицах, а всё в том же обновлении вычислительного движка, т.к. на старых версиях Excel такого прироста в скорости на умных таблицах я не помню.

Бонус. Запрос Power Query

Замерять, так замерять! Давайте, для полноты картины, сравним наши перечисленные способы еще и с запросом Power Query, который тоже может решить нашу задачу. Кто-то скажет, что некорректно сравнивать пересчёт формул с механизмом обновления запроса, но мне, откровенно говоря, просто самому было интересно — кто быстрее?

  1. Превращаем обе наши таблицы в «умные» с помощью команды Форматировать как таблицу на вкладке Главная (Home — Format as Table) или с помощью сочетания клавиш Ctrl + T .
  2. По очереди загружаем таблицы в Power Query с помощью команды Данные — Из таблицы / диапазона (Data — From Table/Range) .
  3. После загрузки в Power Query возвращаемся обратно в Excel, оставляя загруженные данные как подключение. Для этого в окне Power Query выбираем Главная — Закрыть и загрузить — Закрыть и загрузить в. — Только создать подключение (Home — Close&Load — Close&Load to. — Only create connection) .
  4. После того, как обе исходные таблицы будут загружены как подключения, создадим ещё один, третий запрос, который будет объединять их между собой, подставляя цены из прайса в отгрузки. Для этого на вкладке Данные выберем Получить данные / Создать запрос — Объединить запросы — Объединить (Get Data / New Query — Merge queries — Merge) :

Объединяем запросы

Настройки объединения

Разворачиваем вложенные таблицы после объединения

В отличие от формул, запросы Power Query не обновляются автоматически «на лету», а требуют щелчка правой кнопкой мыши по таблице (или запросу в правой панели) и выбору команды Обновить (Refresh) . Также можно воспользоваться командой Обновить все (Refresh All) на вкладке Данные (Data) .

Время обновления = 8,2 сек.

Итоговая таблица и выводы

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

Итоговая таблица результатов

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

ВПР с несколькими условиями: 5 примеров.

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

Мы предложим вам несколько вариантов решения проблемы поиска по нескольким условиям.

ВПР по нескольким условиям с использованием дополнительного столбца.

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

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

Сразу по трем столбцам функция ВПР искать не может. Поэтому нам нужно объединить их в один. И, поскольку поиск производится всегда в крайнем левом (первом) столбце, то нужно добавить его в нашу таблицу тоже слева.

Вставляем перед таблицей с данными дополнительный столбец A. Затем при помощи оператора & объединяем в нем содержимое B,C и D. Записываем в А7

и копируем в находящиеся ниже ячейки.

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

В диапазон поиска включаем и наш дополнительный столбец. Критерий поиска – также объединение 3 значений. И извлекаем результат из 5 колонки.

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

Вид станет приятнее, а на результаты это никак не повлияет.

ВПР по двум условиям при помощи формулы массива.

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

Для этого в верхней части нашего листа запишем критерии поиска: дата и магазин. В ячейке B3 будем выводить сумму выручки.

Формула в B3 выглядит следующим образом:

Обратите внимание на фигурные скобки, которые означают, что это формула массива. То есть наша функция ВПР работает не с отдельными значениями, а разу с массивами данных.

Разберем процесс подробно.

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

То есть, в том случае, если наименование магазина совпадает с критерием в ячейке B2, мы оставляем исходные значения из нашего диапазона. А если нет – заменяем их на пробелы. И так по каждой строке.

В результате получим вот такой виртуальный массив данных на основе нашей исходной таблицы:

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

С такой работой функция ВПР вполне справится.

Такой ход стал возможен путем применения формулы массива. Поэтому обратите особое внимание: круглые скобки в формуле писать руками не нужно! В ячейке B3 вы записываете формулу

И затем нажимаете комбинацию клавиш CTRL+Shift+Enter. При этом Excel поймет, что вы хотите ввести формулу массива и сам подставит скобки.

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

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

Вот как это будет выглядеть.

ВПР по нескольким критериям с применением массивов — способ 2.

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

Условия возьмем те же, что и в предыдущем примере.

Формулу в С4 введем такую:

Естественно, не забываем нажать CTRL+Shift+Enter.

Теперь давайте пошагово разберем, как это работает.

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

Как и в предыдущем примере, мы ищем текст из объединенных в одно целое условий поиска.

Далее определяем данные, среди которых будем искать.

Конструкция вида A7:A20&B7:B20&C7:C20;D7:D20 создает 2 элемента. Первый – это объединение колонок A, B и C из исходных данных. Если помните, то же самое мы делали в нашем дополнительном столбце. Второй D7:D20 – это значения, одно из которых нужно в итоге выбрать.

Функция ВЫБОР позволяет из этих элементов создать массив. как раз и означает, что нужно взять сначала первый элемент, затем второй, и объединить их в виртуальную таблицу – массив.

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

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

Двойной ВПР при помощи ИНДЕКС + ПОИСКПОЗ

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

Формула в С4 теперь выглядит так:

И не забываем при вводе нажать CTRL+Shift+Enter! Это формула массива.

Теперь давайте разбираться, как это работает.

Функция ИНДЕКС в нашем случае позволяет извлечь элемент из списка по его порядковому номеру. Список – это диапазон D7:D20, где записаны суммы выручки. А вот порядковый номер, который нужно извлечь, мы определяем при помощи ПОИСКПОЗ.

Синтаксис здесь следующий:

ПОИСКПОЗ(что_ищем; где_ищем; тип_поиска)

Тип поиска ставим 0, то есть точное совпадение. В нашем случае мы будем искать 1. Далее мы определим массив, в котором будем работать.

Выражение (A7:A20=C1)*(B7:B20=C2)*(C7:C20=C3) позволит создать виртуальную таблицу примерно такого вида:

Как видите, первоначально мы последовательно сравниваем каждое значение с нашим критерием отбора. В столбце А у нас записаны месяцы – сравниваем их с месяцем-критерием из ячейки C1. В случае совпадения получаем ИСТИНА, иначе – ЛОЖЬ. Аналогично последовательно проверяем год и название магазина. А затем просто перемножаем значения. Поскольку логические переменные для Excel – это либо 0, либо 1, то произведение их может быть равно 1 только в том случае, если мы имеем по каждой колонке ИСТИНА (то есть,1). Во всех остальных случаях получаем 0.

Убеждаемся, что цифра 1 встречается только единожды.

При помощи ПОИСКПОЗ определяем, на какой позиции она находится. На какой позиции находится 1, на той же позиции находится в массиве и искомая сумма выручки. В нашем случае это 10-я.

Далее при помощи ИНДЕКС извлекаем 10-ю по счету выручку.

Таким образом мы выбрали значение по нескольким условиям без использования функции ВПР.

Достойная замена – функция СУММПРОИЗВ.

У нас есть данные о продажах нескольких менеджеров в различных регионах. Нужно сделать выборку по дате, менеджеру и региону.

Работает как формула массива, хотя по факту таковой не является. В этом заключается замечательное свойство функции СУММПРОИЗВ, о которой мы еще много будем говорить в других статьях.

Последовательно по каждой строке диапазона от 2-й до 27-й она проверяет совпадение каждого соответствующего значения с критерием поиска. Эти результаты перемножаются между собой и в итоге еще умножаются на сумму выручки. Если среди трех условий будет хотя бы одно несовпадение, то итогом будет 0. В случае совпадения сумма выручки трижды умножится на 1.

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

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

Для этого из формулы просто уберем сравнение по дате.

Кстати, возможен и другой вариант расчета с этой же функцией:

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

Примеры использования функции ВПР:

Как объединить две или несколько таблиц в Excel — В этом руководстве вы найдете некоторые приемы объединения таблиц Excel путем сопоставления данных в одном или нескольких столбцах. Как часто при анализе в Excel вся необходимая информация собирается на одном…

ВПР с несколькими таблицами

2 способа извлечь данные из разных таблиц при помощи ВПР. — Задача: Данные, которые нужно найти и извлечь при помощи функции ВПР, находятся в нескольких таблицах. Эти таблицы имеют одинаковую структуру (то есть, одни и те же столбцы, расположенные в одном…
/> Вычисление номера столбца для извлечения данных в ВПР — Задача: Наиболее простым способом научиться указывать тот столбец, из которого функция ВПР будет извлекать данные. При этом мы не будем изменять саму формулу, поскольку это может привести в случайным ошибкам.…
4 способа, как сделать левый ВПР в Excel. — Функция ВПР – одна из самых популярных, когда нужно найти и извлечь из таблицы какие-либо данные. Но при этом она имеет один существенный недостаток. Поиск она производит в крайнем левом…
Формула ВПР в Excel для сравнения двух таблиц — 4 способа — Сравнение таблиц – это задача, которую в Excel приходится довольно часто решать. Например, у нас есть старый прайс-лист и его новая версия. Нужно просмотреть, цены на какие товары изменились и…
Почему не работает ВПР в Excel? — Функция ВПР – это очень мощный инструмент поиска. Но если он по каким-то причинам завершился неудачно, то вы получите сообщение об ошибке #Н/Д (#N/A в английском варианте). Давайте постараемся вместе…
Функция ВПР в Excel: пошаговая инструкция с 5 примерами — ВПР — это функция Excel для поиска и извлечения данных из определенного столбца в таблице. Она поддерживает приблизительное и точное сопоставление, а также подстановочные знаки (* и ?). Значения поиска…
Формула ВПР в Excel — 22 факта, которые нужно знать. — В процессе работы в Excel часто возникает задача извлечения нужных данных из рабочих таблиц. Для этой цели в Excel предусмотрена формула ВПР (VLOOKUP в английском варианте). И хотя ВПР относительно…

Суть запроса на выборку – выбрать из исходной таблицы строки, удовлетворяющие определенным критериям (подобно применению стандартного Фильтра ). Произведем отбор значений из исходной таблицы с помощью формул массива . В отличие от применения Фильтра ( CTRL+SHIFT+L или Данные/ Сортировка и фильтр/ Фильтр ) отобранные строки будут помещены в отдельную таблицу.

В этой статье рассмотрим наиболее часто встречающиеся запросы, например: отбор строк таблицы, у которых значение из числового столбца попадает в заданный диапазон (интервал); отбор строк, у которых дата принаждежит определенному периоду; задачи с 2-мя текстовыми критериями и другие. Начнем с простых запросов.

1. Один числовой критерий (Выбрать те Товары, у которых цена выше минимальной)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — число ).

Необходимо отобразить в отдельной таблице только те записи (строки) из Исходной таблицы, у которых цена выше 25.

Решить эту и последующие задачи можно легко с помощью стандартного фильтра . Для этого выделите заголовки Исходной таблицы и нажмите CTRL+SHIFT+L . Через выпадающий список у заголовка Цены выберите Числовые фильтры. , затем задайте необходимые условия фильтрации и нажмите ОК.

Будут отображены записи удовлетворяющие условиям отбора.

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

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

Теперь выделим диапазон D11:D19 (столбец Товар) и в Строке формул введем формулу массива :

Вместо ENTER нажмите сочетание клавиш CTRL+SHIFT+ENTER .

Те же манипуляции произведем с диапазоном E11:E19 куда и введем аналогичную формулу массива :

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

Чтобы показать динамизм полученного Отчета (Запроса на выборку) введем в Е6 значение 65. В новую таблицу будет добавлена еще одна запись из Исходной таблицы, удовлетворяющая новому критерию.

Если в Исходную таблицу добавить новый товар с Ценой в диапазоне от 25 до 65, то в новую таблицу будет добавлена новая запись.

В файле примера также содержатся формулы массива с обработкой ошибок, когда в столбце Цена содержится значение ошибки, например #ДЕЛ/0! (см. лист Обработка ошибок ).

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

3. Один критерий Дата (Выбрать те Товары, у которых Дата поставки совпадает заданной)

Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата ).

Для отбора строк используются формулы массива, аналогичные Задаче1 (вместо критерия =$B$12:$B$20)*(СТРОКА($B$12:$B$20)-СТРОКА($B$11));$J$12-СТРОКА(A12)+СТРОКА($B$11)+1))

Примечание : После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER. Это сочетание клавиш используется для ввода формул массива.

Скопируйте формулу массива вниз на нужное количество ячеек. Формула вернет только те значения Товаров, которые были поставлены в диапазоне указанных дат. В остальных ячейках будут содержаться ошибки #ЧИСЛО! Ошибки в файле примера (Лист 4.Диапазон Дат) скрыты с помощью Условного форматирования .

Аналогичную формулу нужно ввести и для дат в столбец E.

В ячейке J12 вычислено количество строк исходной таблицы, удовлетворяющих критериям:

Решение2 : Для отбора строк можно использовать формулы массива, аналогичные Задаче2 (т.е. формулы массива, возвращающие несколько значений ):

Для ввода первой формулы выделите диапазон ячеек G12:G20 . После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER.

Решение3 : Если столбец Дат СОРТИРОВАН, то можно не использовать формулы массива.

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

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

5. Один критерий Дата (Выбрать те Товары, у которых Дата поставки не раньше/ не позже заданной)

Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата (не позже) ).

Для отбора строк, дата которых не раньше (включая саму дату), используется формула массива:

= ИНДЕКС(A12:A20;НАИМЕНЬШИЙ(ЕСЛИ($E$7 C15;И($B$7>=B15;$B$7 =$B$13:$B$21)*($B$13:$B$21>0);СТРОКА($B$13:$B$21);»»);СТРОКА($B$13:$B$21)-СТРОКА($B$12)) -СТРОКА($B$12))

Условие $E$7=$A$13:$A$21 гарантирует, что будут отобраны товары только определенного типа. Условие $E$8>=$B$13:$B$21 гарантирует, что будут отобраны даты не позже заданной (включая). Условие $B$13:$B$21>0 необходимо, если в диапазоне дат имеются пустые ячейки. Знак * (умножение) используется для задания Условия И (все 3 критерия должны выполняться для строки одновременно).

Примечание . Случай, когда список несортирован, рассмотрен в статье Поиск ДАТЫ (ЧИСЛА) ближайшей к заданной, с условием в MS EXCEL. Несортированный список .

7. Один Текстовый критерий (Выбрать Товары определенного вида)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — Текст ).

Задача решается аналогично Задачам 1 и 3. Более подробное решение см. в статье Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск .

8. Два Текстовых критерия (Выбрать Товары определенного вида, поставленные в заданный месяц)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (И) ).

Для отбора строк используется формула массива:

Выражение ($F$6=$A$11:$A$19)*($F$7=$B$11:$B$19) задает оба условия (Товар и Месяц).

Выражение СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК($A$11:$A$19))) формирует массив последовательных чисел , т.е. номера строк в таблице.

9. Два Текстовых критерия (Выбрать Товары определенных видов)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (ИЛИ) ).

В отличие от Задачи 7 отберем строки с товарами 2-х видов ( Условие ИЛИ ).

Для отбора строк используется формула массива:

= ИНДЕКС(A$11:A$19; НАИБОЛЬШИЙ((($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19))*(СТРОКА($A$11:$A$19)-СТРОКА($A$10)); СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1))

Условие ($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19) гарантирует, что будут отобраны товары только заданных видов из желтых ячеек (Товар2 и Товар3). Знак + (сложение) используется для задания Условие ИЛИ (должен быть выполнен хотя бы 1 критерий).

Вышеуказанное выражение вернет массив . Умножив его на выражение СТРОКА($A$11:$A$19)-СТРОКА($A$10) , т.е. на массив последовательных чисел , получим массив позиций (номеров строк таблицы), удовлетворяющих критериям. В нашем случае это будет массив .

С помощью функции НАИБОЛЬШИЙ() выведем 3 значения из позиции 5 (строка 15 листа), 6 (16) и 7 (17), т.е. значения Товар2, Товар2 и Товар3. Для этого используем выражение СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1 , которое последовательно (начиная со строки 11) будет возвращать числа 3; 2; 1; 0; -1; -2; . Формула НАИБОЛЬШИЙ(. ;3) вернет число 5, НАИБОЛЬШИЙ(. ;2) вернет число 6, НАИБОЛЬШИЙ(. ;1) вернет число 7, а НАИБОЛЬШИЙ(. ;0) и далее вернет ошибку, которую мы скроем условным форматированием .

И наконец, с помощью функции ИНДЕКС() последовательно выведем наши значения из соответствующих позиций: = ИНДЕКС(A$11:A$19;5) вернет Товар2, = ИНДЕКС(A$11:A$19;6) вернет Товар2, = ИНДЕКС(A$11:A$19;7) вернет Товар3.

10. Отбор значений с учетом повторов

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

Наиболее популярные статьи из этого раздела:

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

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

Предположим, что нас интересует сколько и каких партий товаров поставлялось по цене от 1000р. до 2000р. (критерий 1). Причем, партий с одинаковой ценой должно быть минимум 3 (критерий 2).

Решением является формула массива:

Эта формула возвращает номера строк, которые удовлетворяют обоим критериям.

Формула =СУММПРОИЗВ(($C$14:$C$27>=$B$7)*($C$14:$C$27 =$B$10)) подсчитывает количество строк, которые удовлетворяют критериям.

В файле примера на листе «10.Критерий — колич-во повторов» настроено Условное форматирование , которое позволяет визуально определить строки удовлетворяющие критериям, а также скрыть ячейки, в которых формула массива возвращает ошибку #ЧИСЛО!

11. Используем значение критерия (Любой) или (Все)

В фильтре Сводных таблиц MS EXCEL используется значение (Все), чтобы вывести все значения столбца. Другими словами, в выпадающем списке значений критерия содержится особое значение, которое отменяет сам критерий (см. статью Отчеты в MS EXCEL , Отчет №3).

В файле примера на листе «11. Критерий Любой или (Все)» реализован данный вариант критерия.

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

Остальная часть формулы аналогична рассмотренным выше.

12. Актуальная цена

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

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

2) определяем последнюю (максимальную) дату для каждого товара с помощью формулы массива =МАКС((Таблица1[товар]=E8)*Таблица1[дата])

3) наконец, выводим актуальную цену =СУММЕСЛИМН(Таблица1[цена];Таблица1[товар];E8;Таблица1[дата];F8)

Для товара не должно быть повторов дат, иначе цены будут суммироваться (если повторяется последняя дата).

Содержание

  • Выполнение выборки
    • Способ 1: применение расширенного автофильтра
    • Способ 2: применение формулы массива
    • Способ 3: выборка по нескольким условиям с помощью формулы
    • Способ 4: случайная выборка
  • Вопросы и ответы

Выборка в Microsoft Excel

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

Выполнение выборки

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

Способ 1: применение расширенного автофильтра

Наиболее простым способом произвести отбор является применение расширенного автофильтра. Рассмотрим, как это сделать на конкретном примере.

  1. Выделяем область на листе, среди данных которой нужно произвести выборку. Во вкладке «Главная» щелкаем по кнопке «Сортировка и фильтр». Она размещается в блоке настроек «Редактирование». В открывшемся после этого списка выполняем щелчок по кнопке «Фильтр».
    Включение фильтра в Microsoft Excel

    Есть возможность поступить и по-другому. Для этого после выделения области на листе перемещаемся во вкладку «Данные». Щелкаем по кнопке «Фильтр», которая размещена на ленте в группе «Сортировка и фильтр».

  2. Включение фильтра через вкладку Данные в Microsoft Excel

  3. После этого действия в шапке таблицы появляются пиктограммы для запуска фильтрования в виде перевернутых острием вниз небольших треугольников на правом краю ячеек. Кликаем по данному значку в заглавии того столбца, по которому желаем произвести выборку. В запустившемся меню переходим по пункту «Текстовые фильтры». Далее выбираем позицию «Настраиваемый фильтр…».
  4. Переход в настраиваемый фильтр в Microsoft Excel

  5. Активируется окно пользовательской фильтрации. В нем можно задать ограничение, по которому будет производиться отбор. В выпадающем списке для столбца содержащего ячейки числового формата, который мы используем для примера, можно выбрать одно из пяти видов условий:
    • равно;
    • не равно;
    • больше;
    • больше или равно;
    • меньше.

    Давайте в качестве примера зададим условие так, чтобы отобрать только значения, по которым сумма выручки превышает 10000 рублей. Устанавливаем переключатель в позицию «Больше». В правое поле вписываем значение «10000». Чтобы произвести выполнение действия, щелкаем по кнопке «OK».

  6. Пользвательский фильтр в Microsoft Excel

  7. Как видим, после фильтрации остались только строчки, в которых сумма выручки превышает 10000 рублей.
  8. Результаты фильтрации в Microsoft Excel

  9. Но в этом же столбце мы можем добавить и второе условие. Для этого опять возвращаемся в окно пользовательской фильтрации. Как видим, в его нижней части есть ещё один переключатель условия и соответствующее ему поле для ввода. Давайте установим теперь верхнюю границу отбора в 15000 рублей. Для этого выставляем переключатель в позицию «Меньше», а в поле справа вписываем значение «15000».

    Кроме того, существует ещё переключатель условий. У него два положения «И» и «ИЛИ». По умолчанию он установлен в первом положении. Это означает, что в выборке останутся только строчки, которые удовлетворяют обоим ограничениям. Если он будет выставлен в положение «ИЛИ», то тогда останутся значения, которые подходят под любое из двух условий. В нашем случае нужно выставить переключатель в положение «И», то есть, оставить данную настройку по умолчанию. После того, как все значения введены, щелкаем по кнопке «OK».

  10. Установка верхней границы в пользовательском фильтре в Microsoft Excel

  11. Теперь в таблице остались только строчки, в которых сумма выручки не меньше 10000 рублей, но не превышает 15000 рублей.
  12. Результаты фильтрации по нижней и верхней границе в Microsoft Excel

  13. Аналогично можно настраивать фильтры и в других столбцах. При этом имеется возможность сохранять также фильтрацию и по предыдущим условиям, которые были заданы в колонках. Итак, посмотрим, как производится отбор с помощью фильтра для ячеек в формате даты. Кликаем по значку фильтрации в соответствующем столбце. Последовательно кликаем по пунктам списка «Фильтр по дате» и «Настраиваемый фильтр».
  14. Переход к фильтрации по дате в Microsoft Excel

  15. Снова запускается окно пользовательского автофильтра. Выполним отбор результатов в таблице с 4 по 6 мая 2016 года включительно. В переключателе выбора условий, как видим, ещё больше вариантов, чем для числового формата. Выбираем позицию «После или равно». В поле справа устанавливаем значение «04.05.2016». В нижнем блоке устанавливаем переключатель в позицию «До или равно». В правом поле вписываем значение «06.05.2016». Переключатель совместимости условий оставляем в положении по умолчанию – «И». Для того, чтобы применить фильтрацию в действии, жмем на кнопку «OK».
  16. Пользвательский фильтр для формата даты в Microsoft Excel

  17. Как видим, наш список ещё больше сократился. Теперь в нем оставлены только строчки, в которых сумма выручки варьируется от 10000 до 15000 рублей за период с 04.05 по 06.05.2016 включительно.
  18. Результаты фильтрации по сумме и дате в Microsoft Excel

  19. Мы можем сбросить фильтрацию в одном из столбцов. Сделаем это для значений выручки. Кликаем по значку автофильтра в соответствующем столбце. В выпадающем списке щелкаем по пункту «Удалить фильтр».
  20. Удаление фильтра с одного из столбцов в Microsoft Excel

    Lumpics.ru

  21. Как видим, после этих действий, выборка по сумме выручки будет отключена, а останется только отбор по датам (с 04.05.2016 по 06.05.2016).
  22. Ограничения только по дате в Microsoft Excel

  23. В данной таблице имеется ещё одна колонка – «Наименование». В ней содержатся данные в текстовом формате. Посмотрим, как сформировать выборку с помощью фильтрации по этим значениям.

    Кликаем по значку фильтра в наименовании столбца. Последовательно переходим по наименованиям списка «Текстовые фильтры» и «Настраиваемый фильтр…».

  24. Переход к текстовой фильтрации в Microsoft Excel

  25. Опять открывается окно пользовательского автофильтра. Давайте сделаем выборку по наименованиям «Картофель» и «Мясо». В первом блоке переключатель условий устанавливаем в позицию «Равно». В поле справа от него вписываем слово «Картофель». Переключатель нижнего блока так же ставим в позицию «Равно». В поле напротив него делаем запись – «Мясо». И вот далее мы выполняем то, чего ранее не делали: устанавливаем переключатель совместимости условий в позицию «ИЛИ». Теперь строчка, содержащая любое из указанных условий, будет выводиться на экран. Щелкаем по кнопке «OK».
  26. Пользвательский фильтр для формата текста в Microsoft Excel

  27. Как видим, в новой выборке существуют ограничения по дате (с 04.05.2016 по 06.05.2016) и по наименованию (картофель и мясо). По сумме выручки ограничений нет.
  28. Ограничения по дате и по наименованию в Microsoft Excel

  29. Полностью удалить фильтр можно теми же способами, которые использовались для его установки. Причем неважно, какой именно способ применялся. Для сброса фильтрации, находясь во вкладке «Данные» щелкаем по кнопке «Фильтр», которая размещена в группе «Сортировка и фильтр».
    Очистка фильтра в Microsoft Excel

    Второй вариант предполагает переход во вкладку «Главная». Там выполняем щелчок на ленте по кнопке «Сортировка и фильтр» в блоке «Редактирование». В активировавшемся списке нажимаем на кнопку «Фильтр».

Очистка фильтра во вкладке Главная в Microsoft Excel

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

Фильтр сброшен в Microsoft Excel

Урок: Функция автофильтр в Excel

Способ 2: применение формулы массива

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

  1. На том же листе создаем пустую таблицу с такими же наименованиями столбцов в шапке, что и у исходника.
  2. Создание пустой таблицы в Microsoft Excel

  3. Выделяем все пустые ячейки первой колонки новой таблицы. Устанавливаем курсор в строку формул. Как раз сюда будет заноситься формула, производящая выборку по указанным критериям. Отберем строчки, сумма выручки в которых превышает 15000 рублей. В нашем конкретном примере, вводимая формула будет выглядеть следующим образом:

    =ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(15000<=C2:C29;СТРОКА(C2:C29);"");СТРОКА()-СТРОКА($C$1))-СТРОКА($C$1))

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

  4. Ввод формулы в Microsoft Excel

  5. Так как это формула массива, то для того, чтобы применить её в действии, нужно нажимать не кнопку Enter, а сочетание клавиш Ctrl+Shift+Enter. Делаем это.
  6. Формула массива введена в столбец наименований в Microsoft Excel

  7. Выделив второй столбец с датами и установив курсор в строку формул, вводим следующее выражение:

    =ИНДЕКС(B2:B29;НАИМЕНЬШИЙ(ЕСЛИ(15000<=C2:C29;СТРОКА(C2:C29);"");СТРОКА()-СТРОКА($C$1))-СТРОКА($C$1))

    Жмем сочетание клавиш Ctrl+Shift+Enter.

  8. Формула массива введена в столбец даты в Microsoft Excel

  9. Аналогичным образом в столбец с выручкой вписываем формулу следующего содержания:

    =ИНДЕКС(C2:C29;НАИМЕНЬШИЙ(ЕСЛИ(15000<=C2:C29;СТРОКА(C2:C29);"");СТРОКА()-СТРОКА($C$1))-СТРОКА($C$1))

    Опять набираем сочетание клавиш Ctrl+Shift+Enter.

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

  10. Формула массива введена в столбец выручки в Microsoft Excel

  11. Как видим, таблица заполнена данными, но внешний вид её не совсем привлекателен, к тому же, значения даты заполнены в ней некорректно. Нужно исправить эти недостатки. Некорректность даты связана с тем, что формат ячеек соответствующего столбца общий, а нам нужно установить формат даты. Выделяем весь столбец, включая ячейки с ошибками, и кликаем по выделению правой кнопкой мыши. В появившемся списке переходим по пункту «Формат ячейки…».
  12. Переход к форматировани ячеек в Microsoft Excel

  13. В открывшемся окне форматирования открываем вкладку «Число». В блоке «Числовые форматы» выделяем значение «Дата». В правой части окна можно выбрать желаемый тип отображения даты. После того, как настройки выставлены, жмем на кнопку «OK».
  14. Установка формата даты в Microsoft Excel

  15. Теперь дата отображается корректно. Но, как видим, вся нижняя часть таблицы заполнена ячейками, которые содержат ошибочное значение «#ЧИСЛО!». По сути, это те ячейки, данных из выборки для которых не хватило. Более привлекательно было бы, если бы они отображались вообще пустыми. Для этих целей воспользуемся условным форматированием. Выделяем все ячейки таблицы, кроме шапки. Находясь во вкладке «Главная» кликаем по кнопке «Условное форматирование», которая находится в блоке инструментов «Стили». В появившемся списке выбираем пункт «Создать правило…».
  16. Переход к созданию правила в Microsoft Excel

  17. В открывшемся окне выбираем тип правила «Форматировать только ячейки, которые содержат». В первом поле под надписью «Форматировать только ячейки, для которых выполняется следующее условие» выбираем позицию «Ошибки». Далее жмем по кнопке «Формат…».
  18. Переход к выбору формата в Microsoft Excel

  19. В запустившемся окне форматирования переходим во вкладку «Шрифт» и в соответствующем поле выбираем белый цвет. После этих действий щелкаем по кнопке «OK».
  20. Формат ячеек в Microsoft Excel

  21. На кнопку с точно таким же названием жмем после возвращения в окно создания условий.

Создание условия форматирования в Microsoft Excel

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

Выборка сделана в Microsoft Excel

Урок: Условное форматирование в Excel

Способ 3: выборка по нескольким условиям с помощью формулы

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

  1. Вписываем в отдельном столбце граничные условия для выборки.
  2. Условия в Microsoft Excel

  3. Как и в предыдущем способе, поочередно выделяем пустые столбцы новой таблицы и вписываем в них соответствующие три формулы. В первый столбец вносим следующее выражение:

    =ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(($D$2=C2:C29);СТРОКА(C2:C29);"");СТРОКА(C2:C29)-СТРОКА($C$1))-СТРОКА($C$1))

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

    Каждый раз после ввода не забываем набирать сочетание клавиш Ctrl+Shift+Enter.

  4. Результат выборки по нескольким условиям в Microsoft Excel

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

Изменение результатов выборки в Microsoft Excel

Способ 4: случайная выборка

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

  1. Слева от таблицы пропускаем один столбец. В ячейке следующего столбца, которая находится напротив первой ячейки с данными таблицы, вписываем формулу:

    =СЛЧИС()

    Эта функция выводит на экран случайное число. Для того, чтобы её активировать, жмем на кнопку ENTER.

  2. Случайное число в Microsoft Excel

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

  5. Теперь у нас имеется диапазон ячеек, заполненный случайными числами. Но, он содержит в себе формулу СЛЧИС. Нам же нужно работать с чистыми значениями. Для этого следует выполнить копирование в пустой столбец справа. Выделяем диапазон ячеек со случайными числами. Расположившись во вкладке «Главная», щелкаем по иконке «Копировать» на ленте.
  6. Копирование в Microsoft Excel

  7. Выделяем пустой столбец и кликаем правой кнопкой мыши, вызывая контекстное меню. В группе инструментов «Параметры вставки» выбираем пункт «Значения», изображенный в виде пиктограммы с цифрами.
  8. Вставка в Microsoft Excel

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

  11. Активируется окно настройки сортировки. Обязательно устанавливаем галочку напротив параметра «Мои данные содержат заголовки», если шапка имеется, а галочки нет. В поле «Сортировать по» указываем наименование того столбца, в котором содержатся скопированные значения случайных чисел. В поле «Сортировка» оставляем настройки по умолчанию. В поле «Порядок» можно выбрать параметр как «По возрастанию», так и «По убыванию». Для случайной выборки это значения не имеет. После того, как настройки произведены, жмем на кнопку «OK».
  12. Настройка сортировки в Microsoft Excel

  13. После этого все значения таблицы выстраиваются в порядке возрастания или убывания случайных чисел. Можно взять любое количество первых строчек из таблицы (5, 10, 12, 15 и т.п.) и их можно будет считать результатом случайной выборки.

Случайная выборка в Microsoft Excel

Урок: Сортировка и фильтрация данных в Excel

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

Еще статьи по данной теме:

Помогла ли Вам статья?

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

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

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

Содержание

  1. Как выбрать уникальные и повторяющиеся значения в Excel — пошаговая инструкция
  2. Подготовка содержания выпадающего списка
  3. Модификация исходной таблицы
  4. Создание выпадающего списка
  5. Выборка ячеек из таблицы по условию
  6. Скачать пример выборки из списка с условным форматированием
  7. 4 способа выборки данных в Excel
  8. Расширенный автофильтр
  9. Формула массива
  10. Выборка с несколькими условиями с помощью формулы
  11. Случайная выборка

Как выбрать уникальные и повторяющиеся значения в Excel — пошаговая инструкция

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

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

Подготовка содержания выпадающего списка

Чтобы наша работа сегодня была более наглядной, давайте возьмем историю расчетов с клиентами. Она будет такой, как на рисунке. Как сделать выборку в Excel из списка

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

  1. Выделяем первый столбец нашей таблицы.
  2. Используем инструмент «Данные» – «Сортировка и фильтр» – «Дополнительно». Как сделать выборку в Excel из списка
  3. После этого перед нами появится окно, в котором нам надо выбрать тип обработки «скопировать результат в другое место», а также поставить флажок возле пункта «Только уникальные записи». В нашем случае диапазоном, который мы используем будет ячейка с адресом $F$1. Знак доллара означает, что ссылка абсолютная и она не будет меняться в зависимости от того, что человек копирует или вставляет содержимое ячейки, которая с ней связана. Как сделать выборку в Excel из списка
  4. После того, как мы зададим все необходимые параметры, нам нужно нажать на клавишу ОК и так мы подтверждаем наши действия.

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

Модификация исходной таблицы

После этого надо внести некоторые изменения в нашу таблицу. Для этого нужно выделить первые два ряда и нажать на комбинацию клавиш Ctrl+Shift+=. Таким образом у нас вставляются две дополнительные строчки. В новосозданную ячейку A1 вставляем слово «Клиент».

Как сделать выборку в Excel из списка

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

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

  1. Делаем клик по ячейке B1. Переходим на вкладку «Данные» – «Работа с данными» – «Проверка данных». Как сделать выборку в Excel из списка
  2. Появится диалоговое окно, в котором нам надо выбрать тип данных «Список», а в качестве источника данных выбрать наш перечень фамилий. После этого нажимаем на кнопку ОК.

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

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

Выборка ячеек из таблицы по условию

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

Появится меню, в котором нам надо кликнуть по пункту «Создать правило», в качестве которого выбираем «Использовать формулу для определения форматируемых ячеек». Как сделать выборку в Excel из списка

Как сделать выборку в Excel из списка

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

Как сделать выборку в Excel из списка

Как это работает? Когда мы выбираем какое-то значение в выпадающем списке, то формула анализирует все имеющиеся строки, и если видит совпадение, выделяет их обозначенным пользователем цветом. В том, что формула работает, можно убедиться, выбрав другую фамилию. После этого выделение поменяется. Это значительно облегчает чтение таблицы.

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

Как мы добились того, чтобы цветом окрашивалась целая строка, а не отдельная ячейка? Для этого мы применили ссылку на ячейку, где адрес колонки является абсолютным, а номер ряда – относительным.

Скачать пример выборки из списка с условным форматированием

Как это работает? Вы можете попробовать посмотреть наглядно, скачав пример такой таблицы, которая была нами рассмотрена ранее. Для этого нужно перейти по этой ссылке.

4 способа выборки данных в Excel

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

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

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

  1. Предположим, у нас есть таблица, содержащая наименование товара, дату и общее количество денег, которое получилось заработать на продаже конкретной позиции в определенный день. Нам надо выделить ту область, где надо отобрать выборку. Для этого переходим на вкладку «Главная», где находим кнопку «Сортировка и фильтр» и нажимаем на нее. Ее можно найти в блоке инструментов «Редактирование». После этого находим опцию «Фильтр». Приводим скриншот для наглядности. Как сделать выборку в Excel из списка
  2. Есть и второй способ, как можно поступить в этом случае. Можно найти кнопку «Фильтр» в группе «Сортировка и фильтр», которая располагается на вкладке «Данные». Как сделать выборку в Excel из списка
  3. После того, как мы это сделаем, сверху таблицы появятся стрелочки, с помощью которых можно отобрать данные для фильтра. Нужно нажать на одну из них (то, какая именно, зависит от того столбца, в котором нам нужно выполнить сортировку). После этого находим пункт «Числовые фильтры», и нажимаем на «Настраиваемый фильтр». Как сделать выборку в Excel из списка
  4. После этого появляется окно, через которое можно настроить пользовательскую фильтрацию. С его помощью пользователь может задать критерий, исходя из которого и будут отбираться данные. В выпадающем перечне для той колонки, в какой содержатся числовые ячейки (а именно их мы используем для примера), есть возможность выбрать такие критерии, как равно, не равно, больше, больше или равно и меньше. То есть, стандартные арифметические операции сравнения.
    Давайте для наглядности зададим правило, согласно которому программа должна отбирать исключительно те значения, в которых сумма выручки составляет больше, чем 10 тысяч рублей. Следовательно, нам нужно в поле, обозначенном на скриншоте цифрой 1, выставить пункт «больше», а в поле, обозначенном цифрой 2, установить значение 10 тысяч (цифрами). Далее осталось только подтвердить наши действия. Как сделать выборку в Excel из списка
  5. Как мы понимаем, после того, как мы отфильтровали данные остались исключительно те строки, в которых объем заработанных денег без вычета налогов составляет больше, чем 10 тысяч рублей. Как сделать выборку в Excel из списка
  6. Но у нас есть возможность еще один критерий добавить. Чтобы это сделать, надо снова вернуться к пользовательскому фильтру, в нижней части которого мы видим еще два поля, которые имеют такой же вид, как и тот, в котором мы вводили наши критерии. В нем можно задать второй параметр. Пусть, к примеру, нам надо будет отбирать только те данные, которые не превышают 14999. Для этого выбираем правило «Меньше», а в качестве значения выставляем «15000».
    Также можно воспользоваться переключателем условий, который может принимать одно из двух значений: И и ИЛИ. Первоначально он настроен на первый вариант, но если человеку нужно задать соответствие одному из этих условий, то можно выбрать значение ИЛИ. Чтобы переключить тип соотношения между условиями, необходимо поставить тумблер в соответствующее положение. После того, как мы выполнили все необходимые действия, нажимаем на кнопку «ОК». Как сделать выборку в Excel из списка
  7. Теперь наша таблица отображает только те значения, которые колеблются в пределах от 10 тысяч рублей до 14999 рублей.

Формула массива

Еще один вариант отбора – использование формулы массива. В этом случае результат выводится в отдельную таблицу, что может быть полезно, если первоначальные данные всегда нужно иметь перед глазами в неизменном виде. Чтобы это сделать, нам нужно следующее:

  1. Копируем шапку таблицы в нужное место. Как сделать выборку в Excel из списка
  2. Выделяем все ячейки, которые содержатся в первой колонке новосозданной таблицы и переводим курсор в строку ввода формул. После этого туда вставляем следующую формулу (значения, естественно, меняем на свои). =ИНДЕКС(A2:A29;НАИМЕНЬШИЙ(ЕСЛИ(15000<=C2:C29;СТРОКА(C2:C29);»»);СТРОКА()-СТРОКА($C$1))-СТРОКА($C$1))
  3. Подтверждаем ввод с помощью комбинации клавиш Ctrl + Shift + Enter.
  4. Выполняем аналогичную операцию со вторым столбцом.
  5. Делаем то же самое с третьим столбцом.

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

Как сделать выборку в Excel из списка

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

Выборка с несколькими условиями с помощью формулы

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

  1. Задаем условия в специальной колонке таблицы. Как сделать выборку в Excel из списка
  2. Записываем три формулы с правильными координатами в каждый из вспомогательных столбцов, которые предварительно нужно создать. Точно так же используем для этого формулу массива. Как сделать выборку в Excel из списка

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

Случайная выборка

Ну и наконец, последний метод формирования выборки, который подойдет не во всех ситуациях – использование генератора случайных чисел. Для этого надо использовать функцию =СЛЧИС(). Далее заполняем такое количество ячеек, которое нам нужно, с помощью маркера автозаполнения.

Как сделать выборку в Excel из списка

Далее выбираем «Настраиваемая сортировка» в меню фильтра.

Как сделать выборку в Excel из списка

Появляется меню настроек, где выставляем параметры так, как на скриншоте. Как сделать выборку в Excel из списка

Потом нажимаем «ОК» и получаем результат.

Как сделать выборку в Excel из списка

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

Оцените качество статьи. Нам важно ваше мнение:

Понравилась статья? Поделить с друзьями:
  • Как выбрать уникальные данные в excel
  • Как выбрать текст до пробела excel
  • Как выбрать только цветные ячейки в excel
  • Как выбрать текст в ячейке excel
  • Как выбрать только неповторяющиеся значения excel