Функция если в excel сравнение массивов

ЕСЛИ (функция ЕСЛИ)

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

Поэтому у функции ЕСЛИ возможны два результата. Первый результат возвращается в случае, если сравнение истинно, второй — если сравнение ложно.

Например, функция =ЕСЛИ(C2=»Да»;1;2) означает следующее: ЕСЛИ(С2=»Да», то вернуть 1, в противном случае вернуть 2).

Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

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

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

Например:

  • =ЕСЛИ(A2>B2;»Превышение бюджета»;»ОК»)

  • =ЕСЛИ(A2=B2;B4-A4;»»)

Имя аргумента

Описание

лог_выражение    (обязательно)

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

значение_если_истина    (обязательно)

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

значение_если_ложь    (необязательно)

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

Простые примеры функции ЕСЛИ

Ячейка D2 содержит формулу =ЕСЛИ(C2="Да";1;2)

  • =ЕСЛИ(C2=»Да»;1;2)

В примере выше ячейка D2 содержит формулу: ЕСЛИ(C2 = Да, то вернуть 1, в противном случае вернуть 2)

Ячейка D2 содержит формулу =ЕСЛИ(C2=1;"ДА";"НЕТ")

  • =ЕСЛИ(C2=1;»Да»;»Нет»)

В этом примере ячейка D2 содержит формулу: ЕСЛИ(C2 = 1, то вернуть текст «Да», в противном случае вернуть текст «Нет»). Как видите, функцию ЕСЛИ можно использовать для сравнения и текста, и значений. А еще с ее помощью можно оценивать ошибки. Вы можете не только проверять, равно ли одно значение другому, возвращая один результат, но и использовать математические операторы и выполнять дополнительные вычисления в зависимости от условий. Для выполнения нескольких сравнений можно использовать несколько вложенных функций ЕСЛИ.

Ячейка D2 содержит формулу =ЕСЛИ(C2>B2;"Превышение бюджета","В пределах бюджета")

  • =ЕСЛИ(C2>B2;»Превышение бюджета»;»В пределах бюджета»)

В примере выше функция ЕСЛИ в ячейке D2 означает: ЕСЛИ(C2 больше B2, то вернуть текст «Превышение бюджета», в противном случае вернуть текст «В пределах бюджета»)

Ячейка E2 содержит формулу =ЕСЛИ(C2>B2;C2-B2;"")

  • =ЕСЛИ(C2>B2;C2-B2;0)

На рисунке выше мы возвращаем не текст, а результат математического вычисления. Формула в ячейке E2 означает: ЕСЛИ(значение «Фактические» больше значения «Плановые», то вычесть сумму «Плановые» из суммы «Фактические», в противном случае ничего не возвращать).

Ячейка F7 содержит формулу ЕСЛИ(E7="Да";F5*0,0825;0)

  • =ЕСЛИ(E7=»Да»;F5*0,0825;0)

В этом примере формула в ячейке F7 означает: ЕСЛИ(E7 = «Да», то вычислить общую сумму в ячейке F5 и умножить на 8,25 %, в противном случае налога с продажи нет, поэтому вернуть 0)

Примечание: Если вы используете текст в формулах, заключайте его в кавычки (пример: «Текст»). Единственное исключение — слова ИСТИНА и ЛОЖЬ, которые Excel распознает автоматически.

Распространенные неполадки

Проблема

Возможная причина

0 (ноль) в ячейке

Не указан аргумент значение_если_истина или значение_если_ложь. Чтобы возвращать правильное значение, добавьте текст двух аргументов или значение ИСТИНА/ЛОЖЬ.

#ИМЯ? в ячейке

Как правило, это указывает на ошибку в формуле.

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

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Подключитесь к эксперту. Учитесь у живых инструкторов.

См. также

Функция ЕСЛИ — вложенные формулы и типовые ошибки

Функция УСЛОВИЯ

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

СЧЁТЕСЛИ

Рекомендации, позволяющие избежать появления неработающих формул

Общие сведения о формулах в Excel

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

Это глава из книги: Майкл Гирвин. Ctrl+Shift+Enter. Освоение формул массива в Excel.

Предыдущая глава       Оглавление          Следующая глава

Выборки, основанные на одном или нескольких условиях. Ряд функций Excel используют операторы сравнения. Например, СУММЕСЛИ, СУММЕСЛИМН, СЧЁТЕСЛИ, СЧЁТЕСЛИМН, СРЗНАЧЕСЛИ и СРЗНАЧЕСЛИМН. Эти функции осуществляют выборки на основе одного или нескольких условий (критериев). Проблема в том, что эти функции могут только складывать, подсчитывать количество, и находить среднее. А если вы хотите наложить условия на поиск, например, максимального значения или стандартного отклонения? В этих случаях, поскольку не существует встроенной функции, вы должны изобрести формулу массива. Нередко это связано с использованием оператора сравнения массивов. Первый пример в этой главе, показывает, как рассчитать минимальное значения при одном условии.

Воспользуемся функцией ЕСЛИ, чтобы выбрать элементы массива, отвечающие условию. На рис. 4.1 в левой таблице присутствуют столбец с названиями городов и столбец с временем. Требуется найти минимальное время для каждого города и поместить это значение в соответствующую ячейку правой таблицы. Условие для выборки – название города. Если вы используете функцию МИН, то сможете найти минимальное значение столбца В. Но как вы выберите только те числа, что относятся только к Окленду? И как вам скопировать формулы вниз по колонке? Поскольку в Excel нет встроенной функции МИНЕСЛИ, вам необходимо написать оригинальную формулу, совмещающую функции ЕСЛИ и МИН.

Рис. 4.1. Цель формулы: выбрать минимальное время для каждого города

Скачать заметку в формате Word или pdf в формате Excel2013

Как показано на рис. 4.2, вам следует начать ввод формулы в ячейку E3 с функции МИН. Но вы же не можете поместить в аргумент число1 все значения столбца B!? Вы хотите отобрать только те значения, которые относятся к Окленду.

Рис. 4.2. Начните с ввода функции МИН

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

Рис. 4.3. Добавьте ЕСЛИ внутрь МИН

Разместив курсор в месте введения аргумента лог_выражение функции ЕСЛИ (рис. 4.4), вы выделяете диапазон с названиями городов А3:А8, а затем нажимаете F4, чтобы сделать ссылки на ячейки абсолютными (подробнее см., например, Относительные, абсолютные и смешанные ссылки на ячейки в Excel). Затем вы набираете сравнительный оператор – знак равенства. Наконец, вы выделите ячейку слева от формулы – D3, оставляя ссылку на нее относительной. Сформулированное условие позволит выбрать только Окленды при просмотре диапазона А3:А8.

Рис. 4.4. Создайте оператор массива в аргументе лог_выражение функции ЕСЛИ

Итак, вы создали оператор массива с помощью оператора сравнения. В любой момент обработки массива оператор массива является оператором сравнения, так что результатом его работы будет массив, состоящий из значений ИСТИНА и ЛОЖЬ. Чтобы убедиться в этом, выделите массив (для этого щелкните во всплывающей подсказке на аргумент лог_выражение) и нажмите F9 (рис. 4.5). Обычно вы используете один аргумент лог_выражение, возвращающее либо ИСТИНУ, либо ЛОЖЬ; здесь же результирующий массив вернет несколько значений ИСТИНЫ и ЛЖИ, так что функция МИН выберет минимальное число только для тех городов, которые соответствуют значению ИСТИНА.

Рис. 4.5. Чтобы увидеть массив, состоящий из значений ИСТИНА и ЛОЖь, щелкните во всплывающей подсказке на аргумент лог_выражение и нажмите F9

Надеюсь, вы не забыли (см. главу 2), чтобы «не испортить» формулу после F9 нажмите Ctrl+Z, и формула вернется в исходное состояние.

Как показано на рис. 4.7, далее следует ввести точку с запятой, чтобы перейти к вводу аргумента значение_если_истина функции ЕСЛИ (обратите внимание, что во всплывающей подсказке выделился второй аргумент функции ЕСЛИ). Ведите диапазон В3:В8 и нажмите F4. Выделенный диапазон должен иметь такой же размер, как и массив аргумента лог_выражение (в нашем случае в каждом массиве по 6 элементов). На этом ввод можно завершить, так как аргумент значение_если_ложь является необязательным, и вы, действительно, не хотите что-то считать, для тех ячеек, где аргумента лог_выражение принимает значение ЛОЖЬ. Функция МИН запрограммирована так, что проигнорирует логические значения.

Рис. 4.7. Введите диапазон в аргумент значение_если_истина

Как только вы ввели закрывающую скобку функции ЕСЛИ, всплывающая подсказка «сообразила», что ввод функции ЕСЛИ завершен, и стала показывать синтаксис функции МИН (рис. 4.8). Обратите внимание, что вся функция ЕСЛИ разместилась в аргументе число1 функции МИН.

Рис. 4.8. Функция ЕСЛИ заняла место число1 среди аргументов функции МИН

Чтобы увидеть массив, возвращаемый функцией ЕСЛИ, во всплывающей подсказке щелкните на аргумент1, и нажмите F9 (рис. 4.9). Видно, что массив вернул 4 ЛОЖНЫХ логических значения, когда город не совпадает с Oakland и два числа – 9 и 6 – когда город совпадает с Oakland. Это удивительное использование функции ЕСЛИ позволяет отфильтровать значения, которые вам не нужны и найти минимум только среду «нужных» значений. Аналогичным образом вы можете использовать функцию ЕСЛИ и в других агрегатных функций, таких как МАКС и СТАНДОТКЛОН (СТАНДОТКЛОН.В и СТАНДОТКЛОН.Г в версии Excel2010).

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

Введите вторую закрывающую скобку (для функции МИН). Чтобы убедится, что функция ЕСЛИ не была изначально запрограммирована для обработки массивов, поместите курсор обратно в аргумент лог_выражение функции ЕСЛИ (кликните во всплывающей подсказке на этом аргументе, чтобы выделить содержимое, относящееся к нему). Обратите внимание, что весь массив «сидит» в аргументе лог_выражение (рис. 4.10). Т.е. Excel не понимает, что перед ним функция массива, эта функция не была изначально запрограммирована для обработки массивов, поэтому чтобы завершить ввод формулы в ячейку нажмите Ctrl+Shift+Enter. После этого Excel поместит фигурные скобки в начале и в конце формулы.

Рис. 4.10. Функция ЕСЛИ изначально не предназначена для работы с массивами, поэтому для корректного ввода формулы нажмите Ctrl+Shift+Enter

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

Рис. 4.12 Формулу массива можно «протащить» вниз по столбцу

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

Функции для работы с базами данных

В Excel есть группа из 12 функций для работы с базами данных (их еще называют БД-функции). Эти функции могут производить расчеты на основе критериев. Например, ДМИН, ДМАКС, БДСУММ. Эти функции отлично справятся с работой, если у вас один-единственный расчет, а колонки имеют заголовки. На рис. 4.13 показано, как можно использовать функцию ДМИН для вычисления минимального времени по городу Окленд. Преимущество БД-функций заключается в том, что если вам нужно сделать единственное вычисление, например, найти минимальное время для Окленда (а по Сиэтлу и др. не интересует), то ДМИН создать проще, чем описанную выше =МИН(ЕСЛИ()) формулу массива. Да и работать ДМИН будет быстрее, чем формула массива (что важно при больших объемах данных). К недостатку БД-функции можно отнести требование формировать аргумент критерий из двух полей: заголовка и собственно критерия (рис. 4.14).

Рис. 4.13. Функция ДМИН

Рис. 4.14. Аргумент критерий должен содержать заголовок (D2) и критерий (D3)

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

Рис. 4.15. «Протащить» БД-функцию по колонке не получится

Если бы вам требовалось извлечь минимальное время для большого числа городов, функция ДМИН доставила бы вам много хлопот. Рис. 4.16 показывает метод, который использует БД-функцию совместно с опцией Excel Таблицей данных для облегчения выборки по большому количеству городов (в главе 21 Таблицы данных рассматриваются более подробно).

Рис. 4.16. БД-функция и Таблица данных, работая вместе, могут заменить функцию массива

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

Шаг 1.       Создайте формулу ДМИН в ячейке Е3.

Шаг 2.       Поместите названия городов в ячейки D6:D8.

Шаг 3.       В ячейке Е5 создайте ссылку на ячейку Е3.

Шаг 4.       Выделите область D5:Е8.

Шаг 5.       Откройте диалоговое окно Таблицы данных, для чего нажмите Alt Д, а затем Т, или пройдите по меню Данные — Работа с данными — Анализ «что если» — Таблица данных

Шаг 6.       Введите D3 в область «Подставлять значения по строкам в:» (всё равно, какую ссылку вы введете – абсолютную или относительную).

Итак, когда использовать ДМИН, а когда формулу массива МИН(ЕСЛИ(…))? Если вам нужно выполнить единственное вычисление, и данные у вас организованы надлежащим образом (имеются заголовки), используйте ДМИН. Если у вас много вычислений и/или данные не организованы для быстрого использования БД-функций, воспользуйтесь формулой массива. Рассмотрите также возможность совместного использования БД-функции и инструмента Таблица данных.

Сводные таблицы

Если вам не требуется, чтобы после внесения изменений в исходные данные, результаты мгновенно обновлялись (что характерно для формул), рассмотрите возможность использования сводной таблицы, которая позволит применить один или несколько критериев для отбора данных. Почему? Потому что сводные таблицы довольно легко создать. Особенно они будут полезны, если критериев много, и/или они весьма «заковыристые». Этот раздел просматривает одну-вычисление условия. Рис. 4.17 показан завершенный сводная Таблица для расчета минимального с одним условием.

Рис. 4.17. Создать сводную таблицу быстро и просто

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

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

Шаг 2.       Встаньте на любую ячейку исходных данных перейдите на вкладку ленты Вставить и в области Таблицы кликните на Сводная таблица.

Шаг 3.       В открывшемся диалоговом окне Создание сводной таблицы включите На существующий лист и в поле Диапазон введите D1.

Шаг 4.       Перетащите Город поле Строки и Время, ч в поле Значения.

Шаг 5.       Щелкните правой кнопкой мыши на одной из ячеек диапазона Е1:Е4 и в контекстном меню выберите опцию Параметры полей значений; в открывшемся окне на вкладке Операция выберите Минимум.

Шаг 6.       Встаньте на любую ячейку сводной таблицы, и сделайте активной вкладку Работа со сводными таблицами – Конструктор; в области Макет кликните на Общие итоги и выберите Отключить для строк и столбцов; там же (в области Макет) кликните на Макет отчета и выберите Показать в табличной форме.

Шаг 7.       Кликните на ячейке D1 и введите Город, кликните на Е1 и введите Минимальное время.

Так что же предпочесть: сводную таблицу или формулу массива? Главный недостаток сводных таблиц заключается в том, что они не обновляются сразу же после изменения исходных данных (нужно встать на любую ячейку сводной таблицы, кликнуть правой кнопкой мыши и выбрать Обновить). В то же время формулы обновляются моментально. Если у вас несколько критериев для отбора, сводные таблицы позволяют проще справиться с ними, перетаскивая поля в области строк, колонн, значений и фильтра. Формулы массива с каждым дополнительным критерием становятся всё сложнее и сложнее. Если вы хотите изменить функцию, в сводной таблице вы просто щелкните правой кнопкой мыши и выберите одну из операций: Сумма, Количество, Минимум… (всего их 11). Используя формулу массива, необходимо перестроить формулу, но… в вашем распоряжении не 11, а 350 функций Excel. Сводные таблице занимают место на листе, их сложнее форматировать. Если в вашем арсенале будет и то, и другое, вы сможете гибче решать стоящие перед вами задачи.

Операции сравнения массивов с несколькими условиями

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

Рис. 4.18. Цель – рассчитать максимальный объем продаж для каждого сотрудника на западе

Вы хотите написать формулу, которую можно «протянуть» по столбцу, также вы хотите, чтобы формула автоматически обновлялась при изменении исходных данных. Вы можете решить задачу с помощью функции МАКС с двумя вложенными функциями ЕСЛИ. Начните ввод формулы в ячейку F5 с функции МАКС; в качестве аргумента число1 вложите функцию ЕСЛИ, которая позволит вам выбрать только те значения, которые соответствуют вашим условиям (рис. 4.19).

Рис. 4.19. Наберите =МАКС(ЕСЛИ(

В качестве первого аргументу лог_выражение функции ЕСЛИ наберите оператор сравнения, спрашивающий: «совпадает ли значение в столбце Регион с условием в ячейке F2?» (рис. 4.20). В качестве результата оператор сравнения $A$3:$A$12=$F$2 вернет последовательность значений ИСТИНА и ЛОЖЬ.

Рис. 4.20. Введите оператор массива

Далее введите разделитель – точка с запятой, и всплывающая подсказка покажет, что вы переместились из области набора аргумента лог_выражение к набору аргумента значение_если_истина (рис. 4.21). Обычно, здесь вводят значение, которые хотят получить в случае если аргумент лог_выражение вернул значение ИСТИНА, но ведь у вас есть еще одно условие, поэтому введите еще одну функцию ЕСЛИ (рис. 4.22). В качестве первого аргумента введите оператор массива, спрашивающий: «совпадает ли значение в столбце Представитель с условием в ячейке Е5?»

Рис. 4.21. Введите разделитель – точку с запятой – это перенесет вас в область набора следующего аргумента

Рис. 4.22. Добавьте вторую функцию ЕСЛИ и оператор массива, проверяющий второе условие

Просто чтобы убедиться, что вторая ЕСЛИ «сидит» в аргументе значение_если_истина первой ЕСЛИ, встаньте курсором на втором слове ЕСЛИ (рис. 4.23). Видно, что во всплывающей подсказке выделился аргумент значение_если_истина. До Excel 2007, вы могли вложить друг в друга до семи функций ЕСЛИ; начиная с Excel 2007 вы можете вложить до 64 функций.

Рис. 4.23. Вторая ЕСЛИ «сидит» в аргументе значение_если_истина первой ЕСЛИ

Введите разделитель – точку с запятой. Теперь вы можете добавлять массив Продажи в качестве аргумента значение_если_истина второй ЕСЛИ (рис. 4.24). Эмпирическое правило для внедрения друг в друга функций ЕСЛИ гласит: продолжайте последовательно вводить функции ЕСЛИ в качестве аргумента лог_выражение предыдущей ЕСЛИ, пока у вас не закончатся условия. Затем вы можете ввести в качестве аргумента значение_если_истина. При этом все значения аргументов значение_если_ложь могут быть опущены, поскольку функция МАКС (и целый ряд других) игнорирует логические значения.

Рис. 4.24. Введите диапазон значений для аргумента значение_если_истина второй ЕСЛИ

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

Рис. 4.25. Черная закрывающая скобка означает, что набор формулы завершен

Если во всплывающей подсказке вы щелкните на аргумент число1, а затем нажмете клавишу F9, то увидите, что две вложенные функции ЕСЛИ отобрали только те значения, которые соответствуют обоим критериям (рис. 4.26). Числа 914 и 610 были выбраны потому, что они относятся, как к региону Запад, так и к представителю Chin.

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

Примечание: рассмотренный пример демонстрирует И критерии. С И критериями, все условия функций ЕСЛИ должны вернуть значение ИСТИНА. В главе 11, вы познакомитесь с ИЛИ критерием; для истинности всего выражения, по крайней мере, одна ЕСЛИ должна вернуть значение ИСТИНА.

Еще пара слов о том, как работает формула. Каждая из двух функций ЕСЛИ проверяет свой массив: первая – А3:А12 на предмет совпадения со значением в F2, вторая – В3:В12 на совпадение с Е5. Только в том случае, когда оба условия выполнены, функция ЕСЛИ возвращает соответствующие значения из третьего массива – С3:С12. Формула выглядит так:

=МАКС(ЕСЛИ({ИСТИНА:ЛОЖЬ:ИСТИНА:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ИСТИНА}; ЕСЛИ({ИСТИНА:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ}; {914:355:590:610:506:825:710:280:363:685})))

Мы знаем, что функция ЕСЛИ не была изначально запрограммирована на работу с массивами, поэтому для ввода формулы в ячейку нажмите Ctrl+Shift+Enter. После того, как вы введете формулу массива, убедитесь, что появились фигурные скобки в начале и в конце формулы. Поскольку они есть, вы можете скопировать формулу вниз по столбцу (рис. 4.29).

Рис. 4.29. Формула массива работает в трех ячейках

После того, как вы создали формулу массива, можно задуматься и о том, как решать задачу другим способом? Как и в первом примере этой главы вам придут на помощь функция для работы с базами данных ДМАКС (рис. 4.30) и сводная таблица (рис. 4.31).

Рис. 4.30. ДМАКС легко найдет максимальное значение при двух условиях, а вот копирование формулы по столбцу затруднено

Рис. 4.31. Сводная таблица очень удобна для отыскания максимального значения при двух условиях, но она требует обновления, если исходные данные изменились

Следующий раздел описывает, как использовать оператор сравнения НЕ и некоторые новые удивительные функции Excel доступные с версии 2010 г., которые могут осуществлять выборки на основе условий (например, нахождение минимума или максимума), без Ctrl+Shift+Enter.

Определение минимума при двух условиях, одно из которых НЕ. Рис. 4.32 показаны результаты нескольких гонок на велосипедах BMX (маленькие гоночные велосипеды). Результаты представлены в трех колонках: название трассы, имя гонщика, время прохождения трассы. Задача – найти лучшее время каждого гонщика, но, поскольку трасса PI гораздо короче других, вы не хотите ее учитывать. Это значит, что вам нужна функция массива МИН с двумя условиями: соответствие имени гонщика и «все трассы, кроме PI». Можно использовать функцию МИН с двумя ЕСЛИ. Первая функция ЕСЛИ выбирает только трассы, которые не являются PI (обратите внимание, что оператор сравнения НЕ вводится как два последовательных символа «меньше» и «больше» <>). Вторая функция ЕСЛИ сравнивает имена гонщиков. (Для ввода функции используйте Ctrl+Shift+Enter.)

Рис. 4.32. Цель – найти минимальное время для каждого гонщика на всех трасса, кроме PI

Если вы используете Excel 2010 года или более позднюю версию, вы можете использовать новую функцию АГРЕГАТ, чтобы еще больше упростить расчет, и обойтись без Ctrl+Shift+Enter. (Функция АГРЕГАТ имеет множество различных применений, но в этой книге рассматриваются только те, что относятся к функциям массива.)

Функция АГРЕГАТ

Рассмотрим туже задачу, что и в предыдущем разделе. Как показано на рис. 4.33, если начать вводить в ячейку F5 название функции АГРЕГАТ, всплывающая подсказка предложит выбрать из двух вариантов. Выберите верхний, содержащий массива в качестве третьего аргумента. Наличие массива в качестве аргумент делает функцию АГРЕГАТ способной обрабатывать операции с массивами без использования Ctrl+Shift+Enter.

Рис. 4.33. Начните вводить АГРЕГАТ и подсказка предложит вам выбрать из двух вариантов

Первый аргумент функции АГРЕГАТ позволяет вам выбрать одну из 19 различных функций (рис. 4.34). Функции с 1-й по 13-ю не могут обработать массивы; функции с 14-й по 19-ю – могут. Кажется странным, что функция 5, МИН, не может быть использовано для операций с массивом, но вы сможете обойти эту проблему с помощью функции 15, НАИМЕНЬШИЙ, устанавливая четвертый аргумент (k) равным единице, т.е. выбирая первое наименьшее число, оно же минимальное.

Рис. 4.34. Первый аргумент функции АГРЕГАТ

Второй аргумент позволяет выбрать один из 7 вариантов обработки строк массива (рис. 4.35). Вариант №6 поможет в нашем случае, потому что позволит игнорировать ошибку, когда хотя бы одно из условий не выполняется.

Рис. 4.35. Второй аргумент функции АГРЕГАТ

Итак, начав набирать функцию АГРЕГАТ, выберите во всплывающем меню в качестве первого аргумента функцию 15, НАИМЕНЬШИЙ (рис. 4.36). А в качестве второго аргумента опцию под номером 6 (рис. 4.37).

Рис. 4.36. Выберите в качестве первого аргумента функцию 15, НАИМЕНЬШИЙ

Рис. 4.37. Выберите в качестве второго аргумента опцию 6 – Пропускать ошибочные значения

После ввода разделите – точки с запятой, третий аргумент функции АГРЕГАТ – массив – выделяется полужирным шрифтом (рис. 4.38). Т.е. третий аргумент функции АГРЕГАТ изначально запрограммирован для обработки массива без использования клавиш Ctrl+Shift+Enter (помните, что это верно только для функций с 14-й по 19-ю).

Рис. 4.38. Третий аргумент функции АГРЕГАТ – массив – изначально запрограммирован для обработки без использования клавиш Ctrl+Shift+Enter

Теперь можно в качестве третьего аргумента функции АГРЕГАТ ввести полученную ранее функцию ЕСЛИ (точнее две вложенные функции ЕСЛИ) для отбора по имени гонщика и всем трекам, кроме PI:

ЕСЛИ($A$3:$A$13<>$F$2;ЕСЛИ($B$3:$B$13=E5;$C$3:$C$13)

Заметим, что если у вас есть массив, который помещен в любой из аргументом функции ЕСЛИ ввод формулы требует нажатия Ctrl+Shift+Enter, даже несмотря на то, что саму функцию ЕСЛИ вы поместите внутрь функции, умеющей работать с массивами, например АГРЕГАТ или СУММПРОИЗВ. Образно говоря, функция ЕСЛИ является козырной и бьет другие функции. Если вы стремитесь избежать ввода Ctrl+Shift+Enter, постарайтесь обойтись без ЕСЛИ.

Чтобы проверить это правило, введите формулу:

=АГРЕГАТ(15;6;ЕСЛИ($A$3:$A$13<>$F$2;ЕСЛИ($B$3:$B$13=E5;$C$3:$C$13));1)

Вы получаете ошибку #ЗНАЧ! Если же вы введете формулу с помощью клавиш Ctrl+Shift+Enter, то формула будет работать, но… это признание вашего поражения, так как вспомните, что цель была – придумать формулу массива, которая не требовала нажатия Ctrl+Shift+Enter. Поэтому, если вы хотите остаться верным своей цели, вы должны скорректировать формулу в аргументе массив и избавиться от ЕСЛИ. Решение основано на замечательном свойстве функции АГРЕГАТ пропускать ошибочные значения! Замените ЕСЛИ($A$3:$A$13<>$F$2;ЕСЛИ($B$3:$B$13=E5;$C$3:$C$13) на $C$3:$C$13/(($A$3:$A$13<>$F$2)*($B$3:$B$13=E5)). Заметьте, что в знаменателе вы должны добавить скобки для каждого оператора сравнения, а также дополнительный набор скобок для всего знаменателя.

Вы поместили в числитель массив значений (время), а в знаменатель – произведение двух условий (операторы сравнения массивов). Только в том случае, когда оба условия вернут значение ИСТИНА, знаменатель будет равен единице.[1] Если хотя бы одно сравнение неверно, знаменатель обращается в ноль. Деление на ноль даст ошибку, и функция АГРЕГАТ ее пропустит.

Если вы выделите аргумент массив в формуле АГРЕГАТ и нажмете F9, то увидите результирующий массив (рис. 4.39).

Рис. 4.39. Выделите аргумент массив в формуле АГРЕГАТ (а) и нажмете F9 (б)

Результирующий массив содержит только числа, которые удовлетворяют обоим условиям (И критерий). Фактически ваша формула массива отфильтровала числа, отвечающие обоим условиям. Теперь вы, наверное, понимаете, почему следовало применить деление. Оно привело к возникновению ошибки #ДЕЛ/0! Произведение не подошло бы, так как привело к появлению элементов массива равным нулю. Именно один их этих нулей и выбрала бы функция МИН. В тоже время ошибки #ДЕЛ/0! не составляют проблемы для функции АГРЕГАТ, поскольку второй ее аргумент содержит опцию 6, дающий команду функции пропускать ошибочные значения. Поскольку мы избавились от функции ЕСЛИ внутри функции АГРЕГАТ, ввод нашей формулы не требует нажатия Ctrl+Shift+Enter. Вы с легкостью «протянете» формулу по столбцу F.

Так что же использовать, функцию АГРЕГАТ с двоичными условиями или формулу с МИН и двумя ЕСЛИ? По времени работы и сложности написания эти две конструкции примерно одинаковы. Но… функция АГРЕГАТ не требует нажатия Ctrl+Shift+Enter. Поэтому я предпочту ее.

Посмотрите, как можно решить эту же задачу с использованием ДМИН (рис. 4.41) и сводной таблицы (рис. 4.42). Обратите внимание на фильтр сводной таблицы не позволяет выбрать «НЕ PI». После создания сводной таблицы используйте фильтр в поле Трасса поставьте галочку в Выделить несколько элементов и снимите галочку напротив PI.

Рис. 4.41. Решение с помощью функции ДМИН и Таблицы данных

Рис. 4.42. Решение с помощью сводной таблицы

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

Для расчета стандартного отклонения воспользуйтесь функцией СТАНДОТКЛОН.В (СТАНДОТКЛОН в версии Excel до 2010) и вложенными функциями ЕСЛИ (рис. 4.43).

Рис. 4.43. Вычисление стандартного отклонения с одним условием

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

Какой метод выборки на основе критериев предпочесть?

Метод Преимущества Недостатки
Сводные таблицы • Легко создавать, особенно с использованием нескольких критериев.• Легко изменить. • Требует команды Обновить.• Только 11 функций.
Функции для работы с базой данных • Просто создавать• Быстрая работа формул.• Отсутствие Ctrl+Shift+Enter. • Нелегко скопировать.• Данные должны содержать заголовки.
АГРЕГАТ • Результат изменяется сразу при изменении данных.• Легко скопировать формулу по столбцу.• Отсутствие Ctrl+Shift+Enter. • Нелегко создавать.• Время расчета больше, чем у БД-функции.• Всего 19 функций и только 6 из них работают с массивами.
Конструкция с одним или несколькими ЕСЛИ • Результат изменяется сразу при изменении данных.• Легко скопировать формулу по столбцу.• Позволяет воспользоваться 350 формулами Excel. • Требует Ctrl+Shift+Enter.• Нелегко создавать.• Время расчета больше, чем у БД-функции.

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

Рис. 4.44. БД-функция работает быстрее, чем конструкция МИН(ЕСЛИ(ЕСЛИ(…))) и АГРЕГАТ


[1] В Excel есть так называемое неявное преобразование типов. Логическое значение ИСТИНА соответствует числу 1, а ЛОЖЬ = 0. Подробнее это будет рассмотрено в главе 11. См. также, например, Что такое -- или как превратить ИСТИНА в 1, а ЛОЖЬ в 0?

Методы сравнения таблиц в Microsoft Excel

Сравнение в Microsoft Excel

​Смотрите также​ Range​из категории​Akazotik​ прицеплять файлы? Если​If .Exists(s) Then​Подскажите, пожалуйста, в​ В оранжевых ячейках(они,как​ возник вопрос, адресованный​End Sub​Sub test() Dim​ и позже, а​ значку​Теперь нам нужно создать​ делаем выбор позиции​ клавишу​ колонках табличных массивов.​Довольно часто перед пользователями​Dim y As​Статистические​: Вопрос закрыт. Нашёл​ да, то я​ Cells(.Item(s), 1).Interior.Color =​ чём я ошибаюсь?​ я сейчас вижу,​ больше наверное к​Но в общем​

​ ws As Worksheet,​ также для версий​

​«Вставить функцию»​ подобное выражение и​«Повторяющиеся значения»​

Способы сравнения

​F5​ В нашем случае​ Excel стоит задача​ Range​, которая подсчитывает сколько​ корреляционный анализ, позволяющий​

  • ​ сразу же прицеплю​ vbGreen​
  • ​Hugo​ более отвлекают ,нежели​
  • ​ nilem.Во втором массиве​ тот же перебор,​

​ a, g, f,​ до Excel 2007​.​ для всех других​.​.​ не совпали данные​ сравнения двух таблиц​s1 = 1​ раз каждый элемент​ сравнивать массивы различной​

​ именно файлы, чтоб​Next i​: Почему решили что​ приносят пользы; вобщем,​ сочетания цифр 48-8(они​ но усовершенствованный -​

Способ 1: простая формула

​ aLR&, gLR&, i&,​ с выполнением этого​Открывается​ элементов первой таблицы.​Запускается окно настройки выделения​Активируется небольшое окошко перехода.​ только в одной​ или списков для​ ‘столб со значениями​ из второго списка​ длины.​ не гонять никого.​End With​ не все? Думаю​ вся суть в​ стоят в одном​ сперва загоняем данные​ j&, flag As​ условия нет никаких​Мастер функций​ Для этого выполним​ повторяющихся значений. Если​ Щелкаем по кнопке​ строке. При их​ выявления в них​ которые ищем​ встречался в первом:​

​БМВ​Bema​End Sub​ все, и даже​ зеленой ячейке) изначально​ столбце) не будет,а​ в массивы, потом​ Boolean Set ws​

Сравниваемые таблицы в Microsoft Excel

  1. ​ проблем. Но в​. Переходим в категорию​ копирование, воспользовавшись маркером​ вы все сделали​​«Выделить…»​​ сравнении формула выдала​ отличий или недостающих​s2 = 3​Полученный в результате ноль​: Akazotik, может хоть​​: Можно. Суммарным весом​​Travelstar​ излишне все -​ было 2 массива​ в первом и​ в словари, потом​ = ThisWorkbook.Worksheets(«Лист1») aLR​

    ​ Excel 2007 и​

    Формула сравнения ячеек в Microsoft Excel

    ​«Статистические»​ заполнения, как это​ правильно, то в​в его нижнем​

  2. ​ результат​​ элементов. Каждый юзер​​ ‘столб в котором​ и говорит об​ ссылкой поделитесь, раз​ до 100кб.​: Благодарю!​​ ведь после получения​​ : первая и​ третьем есть,значит комбинаций​

    Результат сранения первой строки двух таблиц в Microsoft Excel

  3. ​ первый словарь сверяем​ = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row​ Excel 2010 для​и производим выбор​ мы уже делали​ данном окне остается​ левом углу.​«ЛОЖЬ»​ справляется с этой​ ищем​ отличиях.​ нашли?​Akazotik​

    ​Такой подход приемлемый,​ результата сравнения продолжаются…​ вторая части столбца​ с цифрами 48-8-х-х-х-х​ с двумя другими.​ gLR = ws.Cells(ws.Rows.Count,​ того, чтобы открыть​​ наименования​​ прежде. Ставим курсор​ только нажать на​После этого, какой бы​. По всем остальным​ задачей по своему,​s3 = 4​И, наконец, «высший пилотаж»​Ігор Гончаренко​: у меня файлики​ слегка изменю структуру​

    Маркер заполнения в Microsoft Excel

  4. ​Вообще со словарём​ «Шифр». Одну из​ быть не должно.Можно​Вариант с признаком​ 7).End(xlUp).Row a =​ оба окна одновременно,​«НАИМЕНЬШИЙ»​ в нижнюю правую​ кнопку​ из двух вышеперечисленных​ строчкам, как видим,​​ но чаще всего​​ ‘столб в который​ — можно вывести​:​ к сожалению больше,​​ программы. С таким​​ было бы быстрее​

    Результат расчета по всему столбцу в Microsoft Excel

  5. ​ них нужно каким-то​ ли в макросе​ столбца:​ ws.Range(ws.[a2], ws.Cells(aLR, 3)).Value​ требуется провести дополнительные​. Щелкаем по кнопке​ часть элемента листа,​«OK»​​ вариантов вы не​​ формула сравнения выдала​

    Переход в Мастер функций в Microsoft Excel

  6. ​ на решение указанного​​ записываем НЕ найденные​​ отличия отдельным списком.​​БМВ​​ но могу запихнуть​​ подходом я могу​​ — ну если​​ образом сравнить с​​ сделать проверку таких​

    Переход в окно аргументов функции СУММПРОИЗВ в Microsoft Excel

  7. ​Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>Option Explicit​​ g = ws.Range(ws.[g2],​​ манипуляции. Как это​«OK»​ который содержит функцию​. Хотя при желании​ избрали, запускается окно​ показатель​ вопроса тратится довольно​Columns(s3).Clear​

    ​ Для этого придется​

    ​: Ігор Гончаренко, Я​ эти в архив.​ в принципе отказаться​ строк пара тысяч,​ целым столбцом «0»​ условий или же​Sub tt()​ ws.Cells(gLR, 9)).Value ReDim​ сделать рассказывается в​

    ​.​​СЧЁТЕСЛИ​​ в соответствующем поле​ выделения групп ячеек.​«ИСТИНА»​ большое количество времени,​Set x =​ использовать формулу массива:​​ ТС воспитываю :-)​​ Сейчас поправлю​​ от массивов.​​ то не важно…​ , получив при​ лучше это делать​Dim b, c,​ f(1 To gLR​ отдельном уроке.​​Функция​​, и после преобразования​ данного окошка можно​

    ​ Устанавливаем переключатель в​

    ​.​​ так как далеко​​ Range(Cells(1, s1), Cells(Cells(Rows.Count,​

    Окно аргументов функции СУММПРОИЗВ в Microsoft Excel

  8. ​Выглядит страшновато, но свою​ , а не​Ігор Гончаренко​SkyPro​Travelstar​​ этом массив с​​ с помощью функций​ oDict1 As Object,​ — 1, 1​Урок: Как открыть Эксель​НАИМЕНЬШИЙ​ его в маркер​ выбрать другой цвет​ позицию​​Кроме того, существует возможность​​ не все подходы​

Результат расчета функции СУММПРОИЗВ в Microsoft Excel

​ s1).End(xlUp).Row, s1))​ работу выполняет отлично​ ….. :-)​: а как вычисляется​: Можно еще SQL​: Вот и по​ нулей и единиц.​ листа.​ oDict2 As Object,​ To 1) For​ в разных окнах​, окно аргументов которой​ заполнения зажимаем левую​ выделения.​«Выделить по строкам»​ с помощью специальной​ к данной проблеме​With x​

​ ;)​

Сравнение таблиц на разных листах в Microsoft Excel

​он же и​ «мера похожести массивов»​ запросом.​ логике, вроде как​ Именно в сравнении​nilem​ oDict3 As Object​ i = 1​

Способ 2: выделение групп ячеек

​Как видим, существует целый​ было раскрыто, предназначена​ кнопку мыши и​После того, как мы​. Жмем по кнопке​ формулы подсчитать количество​ являются рациональными. В​.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=x​Roody_woody​ успел​можете рассказать на​Использовал класс от​

  1. ​ всё и проверяется…А​ возникла трудность.​​: Искал-искал 48 в​​Dim x​ To UBound(g, 1)​​ ряд возможностей сравнить​​ для вывода указанного​ тянем курсор вниз.​ произведем указанное действие,​​«OK»​​ несовпадений. Для этого​ то же время,​ _​​: Добрый день.​​Андрей VG​

    Переход в окно выделения группы ячеек в Microsoft Excel

    ​ пальцах или на​ Nerv​ строк и действительно​Вижу, что своим​ результирующем массиве (кстати,​Dim kk, ii,​ j = 1:​ таблицы между собой.​ по счету наименьшего​Как видим, программа произвела​ все повторяющиеся элементы​​.​​ выделяем тот элемент​ существует несколько проверенных​, Unique:=True​Стоит следующая задача:​: Михаил, а вы​​ массивах, как вам​​Допустим вы работаете с​

  2. ​ много… по несколько​ описанием внутри файла​​ не сразу сообразил,​​ y&​ flag = False​

    Окно перехода в Microsoft Excel

  3. ​ Какой именно вариант​ значения.​ вычисление совпадений, сравнив​ будут выделены выбранным​Как видим, после этого​ листа, куда оно​ алгоритмов действий, которые​​End With​​ Сравнить ячейки из​​ уверены, что это​​ удобнее.​

    Окно выделения групп ячеек в Microsoft Excel

  4. ​ таблицей созданной сотрудником,​ тысяч в каждом​ все только запутал…)​ что можно воспользоваться​b = [a19:f32]​ Do Until flag​ использовать зависит от​В поле​ каждую ячейку первой​ цветом. Те элементы,​ несовпадающие значения строк​

Несовпавшие данные в Microsoft Excel

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

​ будет выводиться. Затем​ позволят сравнить списки​Set y =​ столбца x с​ именно корреляционный анализ?​Akazotik​ который в неупорядоченный​ массиве…​ Описание проблемы в​

  1. ​ «Найти и выделить»​c = [a35:f48]​ Or j >​ того, где именно​«Массив»​ таблицы с данными,​ которые не совпадают,​ будут подсвечены отличающимся​ щелкаем по значку​ или табличные массивы​​ Range(Cells(1, s2), Cells(Cells(Rows.Count,​​ ячейкой из столбца​​ Что-то не припомню,​​: Я пытался сделать​ способ заполняет информацию,​А вот факт​​ шапке темы -​​) — не​Set oDict1 =​​ UBound(a, 1) If​​ расположены табличные данные​

    Переход в окно управления правилами условного форматирования в Microsoft Excel

  2. ​следует указать координаты​ которые расположены во​ останутся окрашенными в​​ оттенком. Кроме того,​​«Вставить функцию»​

    Диспетчер правил условного форматирования в Microsoft Excel

  3. ​ в довольно сжатые​ s2).End(xlUp).Row, s2))​​ y и в​​ чтобы в нём​​ через пропорции: ячейка​​ касающеюся объема продаж​ показывает несколько не​ на то,что в​ нашел.​ CreateObject(«scripting.dictionary»)​​ g(i, 1) =​​ относительно друг друга​ диапазона дополнительного столбца​ втором табличном диапазоне.​ свой изначальный цвет​​ как можно судить​​.​ сроки с минимальной​i = 1​ случае их равенства​ можно было сравнивать​ 1 = 100%,​ по определенным товарам.​ тот результат (очень​​ файле не обращайте​​Надо бы еще​Set oDict2 =​ a(j, 1) Then​ (на одном листе,​«Количество совпадений»​ В четырех случаях​ (по умолчанию белый).​ из содержимого строки​

    ​В окне​

    ​ затратой усилий. Давайте​For Each w​ записать значение ячейки​ выборки с разным​​ ячейка 2 =​​ Одной из ваших​

    Переход в окно выбора формата в Microsoft Excel

  4. ​ жаль, что не​​ внимания.)​​ повторы убрать. У​​ CreateObject(«scripting.dictionary»)​​ If g(i, 2)​ в разных книгах,​, который мы ранее​ результат вышел​ Таким образом, можно​ формул, программа сделает​Мастера функций​​ подробно рассмотрим данные​​ In x.SpecialCells(xlCellTypeVisible)​

    Выбор цвета заливки в окне формат ячеек в Microsoft Excel

  5. ​ из строки, совпадающей​ числом элементов.​ ?%, но кол-во​​ задач будет –​​ могу сейчас вложить​

    Окно создания правила форматирования в Microsoft Excel

  6. ​Формуляр​ Вас Ексель 2007/10?​​Set oDict3 =​​ = a(j, 2)​​ на разных листах),​​ преобразовали с помощью​

    Применение правила в диспетчере правил в Microsoft Excel

  7. ​«1»​ сразу визуально увидеть,​ активной одну из​в группе операторов​ варианты.​If y.Find(w, LookAt:=xlWhole)​

Несовпадающие данные отмечены с помощью условного форматирования в Microsoft Excel

​ с ячейкой из​Видимо — это​ ячеек не совпадает,​ сравнение. Следует проверить​ программку…).​: Нули и единички​MCH​ CreateObject(«scripting.dictionary»)​ Then If Abs(a(j,​ а также от​ функции​, а в двух​ в чем отличие​ ячеек, находящуюся в​«Математические»​Скачать последнюю версию​

  1. ​ Is Nothing Then​ столбца y из​

    Выделение сравниваемых таблиц в Microsoft Excel

  2. ​ открытие!​ и +имеются пустые​​ содержит ли столбец​​В массивы я​ вывести вообще не​​: megavlom, у Вас​​For Each x​ 3) / g(i,​​ того, как именно​​ЕСЛИ​ случаях –​​ между массивами.​​ указанных не совпавших​

    Переход к условному форматированию в Microsoft Excel

  3. ​выделяем наименование​ Excel​Cells(i, s3) =​ столбца z. Я​Учитывая первую ссылку,​ ячейки. Так что​ таблицы конкретное значение​​ вгоняю диапазон из​​ проблема. Дальше-то с​ в качестве примера​ In [a3:f16]​ 3) — 1)​ пользователь желает, чтобы​

    Окно настройки выделения повторяющихся значений в Microsoft Excel

  4. ​. Делаем все ссылки​«0»​При желании можно, наоборот,​ строках.​СУММПРОИЗВ​Читайте также: Сравнение двух​ w​ так себе представляю​ то скорее всего​ я даже в​ или нет. Конечно​ разных книг, первый​ ними чего?​

Повторяющиеся значения выделены в Microsoft Excel

​ указаны числа 37,​If Len(x.Value) Then​ < 0.03 Then​ это сравнение выводилось​ абсолютными.​. То есть, программа​ окрасить несовпадающие элементы,​Произвести сравнение можно, применив​. Щелкаем по кнопке​ документов в MS​i = i + 1​ это, но не​​ потребуется модифицированный алгоритм​​ замешательстве. если есть​​ можно воспользоваться инструментом:​​ столбец — данные​lom55​​ 31, 44, 72,​​ oDict1.Item(x.Value & «|»​

Настройка выделения уникальных значений в Microsoft Excel

​ flag = True​ на экран.​В поле​

Уникальные значения выделены в Microsoft Excel

​ не смогла отыскать​ а те показатели,​

Способ 4: комплексная формула

​ метод условного форматирования.​«OK»​ Word​End If​​ владею достаточными знаниями.​​ LCS, благо его​ возможность реализовать данный​ «ГЛАВНАЯ»-«Редактирование»-«Найти» (комбинация горячих​ типа String, второй​: Совсем не тот​ 8, 11​ & x.Column) =​

​ End If End​​Автор: Максим Тютюшев​​«K»​ во второй таблице​ которые совпадают, оставить​ Как и в​.​Существует довольно много способов​Next​Для понимания: у​

​ как раз можно​

​ метод для массивов​​ клавиш CTRL+F). Однако​​ — Date и​ компот.)​При этом числа​ x.Value​

​ If j =​​Фдуч1985​​указывается, какое по​ два значения, которые​ с заливкой прежним​ предыдущем способе, сравниваемые​Активируется окно аргументов функции​ сравнения табличных областей​

  1. ​Me.ShowAllData​ меня есть 2​ на формулах реализовать.​ разной длины, то​ при регулярной необходимости​​ при проверке, если​​Вот собственно формула,если​

    Переход в Мастер функций в программе Microsoft Excel

  2. ​ 72 и 44​​Next​​ j + 1​​: Всем добрый вечер!​​ счету наименьшее значение​ имеются в первом​​ цветом. При этом​​ области должны находиться​СУММПРОИЗВ​​ в Excel, но​​Beep​

    Переход в окно аргументов функции СЧЁТЕСЛИ в Microsoft Excel

  3. ​ прайса с артикулами,​Типовая задача, возникающая периодически​​ я буду рад​​ выполнения поиска по​ совпали String-и, то​ все на кучу​ встречаются в 3​

    ​For Each x​​ Loop If Not​​очень нужна Ваша​ нужно вывести. Тут​ табличном массиве.​ алгоритм действий практически​ на одном рабочем​, главной задачей которой​ все их можно​End Sub​ названиями и ценами​ перед каждым пользователем​Исправлено​ таблице данный способ​ проверяю даты, так​ слепить:​ массиве в одном​​ In b​​ flag Then f(i,​

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

    ​ листе Excel и​​ является вычисление суммы​​ разделить на три​Guest​ двух дилеров с​ Excel — сравнить​Ігор Гончаренко​ оказывается весьма неудобным.​ вот, при проверке​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ( (СМЕЩ($J$7;;;ПОИСКПОЗ($I$5;$L$7:$L$15;-1)-1)=СМЕЩ($A$3;;;СЧЁТЗ($A$3:$A$15)) )*СМЕЩ($C$3;;;СЧЁТЗ($C$3:$C$15)) )​ столбце. это ошибка?​If Len(x) Then​​ 1) = 1​​ массива (пример приложил,​

    Окно аргументов функции СЧЁТЕСЛИ в Microsoft Excel

  4. ​ ячейки столбца с​ того, чтобы сравнить​ в окне настройки​​ быть синхронизированными между​​ произведений выделенного диапазона.​ большие группы:​: Я не силён​​ одинаковыми, но перепутанными​​ между собой два​: в колонку А​ Кроме этого данный​ работы алгоритма видно,​

    Результат вычислений функции СЧЁТЕСЛИ в Microsoft Excel

  5. ​То есть, все​Интересно, какая конечная​ oDict2.Item(x) = x​ Next ws.Range(ws.[f2], ws.Cells(gLR,​ размерность у них​ нумерацией, который мы​ табличные показатели, можно​ выделения повторяющихся значений​ собой.​ Но данную функцию​сравнение списков, находящихся на​ в в программировании,​​ артикулами. Необходимо найти​​ диапазона с данными​ пишите 1 массив,​ инструмент не позволяет​ что не все​ действо должно происходить​

    Маркер заполнения в программе Microsoft Excel

  6. ​ задача с этими​Next​ 6)).Value = f​ условная, на самом​ недавно добавили. Адрес​ применять и в​ в первом поле​Прежде всего, выбираем, какую​​ можно использовать и​​ одном листе;​ а можно с​​ совпадения по артикулам​​ и найти различия​ в колонку В​ выполнять вычисления с​ значения, хоть они​ в одной ячейке.)​ числами, что в​

Результат расчета столбца функцией СЧЁТЕСЛИ в Microsoft Excel

​For Each x​ End Subкак проверите​ деле 10 тыс.​ оставляем относительным. Щелкаем​ существующем виде, но​ вместо параметра​ табличную область будем​

​ для наших целей.​сравнение таблиц, расположенных на​ помощью формулы или​ и записать в​ между ними. Способ​ — 2-й (размерности​

  1. ​ найденным результатом. Каждому​ и равны, совпадают…​​ПОИСКПОЗ ищет во​​ итоге хотите получить?​ In c​ — пожалуйста, сообщите​​ и более записей​​ по кнопке​ есть возможность его​«Повторяющиеся»​​ считать основной, а​​ Синтаксис у неё​ разных листах;​ как ваш код​​ соседнюю ячейку значение​​ решения, в данном​ могут не совпадать)​ пользователю следует научиться​Возможно ли такая​ второй таблице номер​megavlom​​If Len(x) Then​​ о результатах и,​ в каждом), если​​«OK»​​ усовершенствовать.​

    Переход в окно аргументов функции ЕСЛИ в Microsoft Excel

  2. ​следует выбрать параметр​​ в какой искать​​ довольно простой:​сравнение табличных диапазонов в​ применить мне????​​ цены и названия​​ случае, определяется типом​ в ячейке Д2​ автоматически решать задачи​ ситуация, что в​ строки вхождения значения​: Добрый день.Как бы​​ oDict3.Item(x) = x​​ если не трудно​

    ​ их сравнить, в​.​​Сделаем так, чтобы те​​«Уникальные»​ отличия. Последнее давайте​=СУММПРОИЗВ(массив1;массив2;…)​​ разных файлах.​​k61​​ детали. Что бы​​ исходных данных.​ можете наблюдать как​ в Excel.​ одном из массивов​ ,введенного в желтую​ четче обьяснить.Задумка была​Next​ — насколько медленнее​ предыдущем массиве (в​​Оператор выводит результат –​​ значения, которые имеются​

    ​. После этого нажать​

    ​ будем делать во​​Всего в качестве аргументов​​Именно исходя из этой​​: Мне пришло грозное​​ проверить действительно ли​Если списки синхронизированы (отсортированы),​ вычисляется процент схожести​Чтобы автоматизировать данный процесс​ в значениях типа​ ячейку(ближайшего меньшего) -​ такая -сделать перебор​​kk = oDict1.keys​​ работает этот макрос​ январе) произошли изменения​ число​​ во второй таблице,​​ на кнопку​

    Окно аргументов функции ЕСЛИ в Microsoft Excel

  3. ​ второй таблице. Поэтому​ можно использовать адреса​​ классификации, прежде всего,​​ письмо из органов​ это одинаковые детали​ то все делается​​ массивов по мере​​ стоит воспользоваться формулой​ String присутствуют буквы​ назвем этот номер​

    Значение ЛОЖЬ формулы ЕСЛИ в Microsoft Excel

  4. ​ чисел столбцов каждого​ii = oDict1.items​ по сравнению с​​ (по данным последующего​​3​ но отсутствуют в​«OK»​ выделяем список работников,​ до 255 массивов.​ подбираются методы сравнения,​ о необходимости перехода​

    Номера строк в Microsoft Excel

  5. ​ и насколько отличаются​ весьма несложно, т.к.​ внесения данных в​ с использованием функций​​ не EN, а​​ Х. Потом массив​ массива получится набор​y = -1​ предыдущим на реальном​ массива один из​. Именно оно наименьшее​ первой, выводились отдельным​

    Нумерация строк в Microsoft Excel

  6. ​.​ находящийся в ней.​ Но в нашем​ а также определяются​ на лицензионное ПО.​​ цены.​​ надо, по сути,​

    Вставить функцию в Microsoft Excel

  7. ​ них и все​​ =ИЛИ() и =СОВПАД().​​ RUS? /​​ из Х-1 елементов​​ комбинаций.после эти три​For Each x​​ объеме данных.​​ объектов исчез, он​​ из нумерации несовпадающих​​ списком.​

    Переход в окно аргументов функции НАИМЕНЬШИЙ в Microsoft Excel

  8. ​Таким образом, будут выделены​​ Переместившись на вкладку​​ случае мы будем​ конкретные действия и​Думаю придётся переходить​Буду очень благодарен​ сравнить значения в​

    ​ строго по Вашему​​Чтобы легко проверить наличие​​nilem​ нужно сравнить с​​ набора сравнить между​​ In ii​Фдуч1985​ отмечен желтым цветом​​ строк табличных массивов.​​Прежде всего, немного переработаем​ именно те показатели,​

    ​«Главная»​​ использовать всего два​​ алгоритмы для выполнения​ на лицензионный Excel,​ за помощь.​ соседних ячейках каждой​ алгоритму​ товаров в таблице​: Редко, но бывает.​ массивом столбца «0»,состоящим​ собой и совпадающие​​y = y + 1​​: Спасибо большое! Очень​

    Окно аргументов функции НАИМЕНЬШИЙ в Microsoft Excel

  9. ​ и обозначен «1»).​ С помощью маркера​​ нашу формулу​​ которые не совпадают.​, щелкаем по кнопке​ массива, к тому​ задачи. Например, при​ освежив версию до​Roody_woody​

    Результат расчета функции НАИМЕНЬШИЙ в Microsoft Excel

  10. ​ строки. Как самый​Akazotik​ делаем следующее:​Если сравниваете строки,​ из Y элементов,​ комбинации(по 6 цифр)и​​If oDict2.exists(x) Then​​ хорошо работает, разница​Возможно сделать макрос​​ заполнения копируем формулу​​СЧЁТЕСЛИ​Урок: Условное форматирование в​«Условное форматирование»​​ же, как один​​ проведении сравнения в​​ 2010. :(​​: Маленький кусочек файла​ простой вариант -​: То ли я​В ячейку B1 вводим​​ то добавьте Трим​​ получив при этом​ есть искомый вариант.За​​If oDict3.exists(x) Then​​ во времени несущественная,​ для автоматизации этого​​ до самого низа.​​, а именно сделаем​

    Переход в окно аргументов функции ИНДЕКС в Microsoft Excel

  11. ​ Экселе​, которая имеет месторасположение​ аргумент.​ разных книгах требуется​А пока файл​​ скину.​​ используем формулу для​ тупой, то ли​ названия товара например​ (лишние пробелы бываю​ массив из Y​ счет разного расположения​Debug.Print kk(y)​ на 19 тыс.​​ процесса? Чтобы «ушедшие»​​Теперь, зная номера строк​

    Окошко выбора вида функции ИНДЕКС в Microsoft Excel

  12. ​ её одним из​​Также сравнить данные можно​​ на ленте в​Ставим курсор в поле​ одновременно открыть два​ в формате xls​Надо сравнить столбец​

    ​ сравнения значений, выдающую​​ файлик не работает,​​ – Монитор.​ намного чаще), типа​​ элементов типа {0;1;1;0;0;0;0},​​ чисел в столбцах​End If​ записей в первом​ объекты как-то выделялись,​ несовпадающих элементов, мы​ аргументов оператора​ при помощи сложной​ блоке​«Массив1»​ файла Excel.​ приложите…​ А со столбцом​ на выходе логические​​ ибо в ячейке​​В ячейке B2 вводим​​ такого​​ который в свою​

    ​ происходит разный набор​​End If​​ случае это занимает​ к примеру, единицами?​ можем вставить в​ЕСЛИ​ формулы, основой которой​«Стили»​и выделяем на​Кроме того, следует сказать,​

    ​clever2012​​ B на наличие​​ значения​

    Окно аргументов функции ИНДЕКС в Microsoft Excel

  13. ​ Д2 находится функция​ следующую формулу:​200?’200px’:»+(this.scrollHeight+5)+’px’);»>If Trim(arr1(i, 1)) =​ очередь без проблем​ вариантов.То что есть​Next​ 10 сек, во​ Опираться при сравнении​ ячейку и их​. Для этого выделяем​ является функция​

Фамилии выведены с помощью функции ИНДЕКС в Microsoft Excel

Способ 5: сравнение массивов в разных книгах

​. Из выпадающего списка​ листе сравниваемый диапазон​ что сравнивать табличные​: прикрепляю​ одинаковых значений и​ИСТИНА (TRUE)​ счисл(), которая выдаёт​Обязательно после ввода формулы​ Trim(arr2(k, 2)) Then​ умножается на массив​ повторы чисел в​End Sub​ втором случае около​ на цены и​ значения с помощью​ первую ячейку, в​СЧЁТЕСЛИ​ переходим по пункту​ данных в первой​ области имеет смысл​k61​ если есть совпадение,​или​ рандомное число​ для подтверждения нажмите​и еще ,​ столбца «2», после​ разных столбцах массива​

Сравнение таблиц в двух книгах в Microsoft Excel

​Serge_007​ минуты.​

​ бюджеты объектов нельзя,​ функции​ которой расположен оператор​. С помощью данного​«Управление правилами»​ области. После этого​ только тогда, когда​: Проверяем.​ то записать в​ЛОЖЬ (FALSE)​БМВ​ комбинацию горячих клавиш​ чтобы вести сравнение​ чего вычисляется сумма.​ -так должно быть.Excel​: Объясните как у​

​Vega-NGC​

lumpics.ru

Сравнение двух массивов в excel

​ т.к. их колебания​​ИНДЕКС​
​СЧЁТЕСЛИ​ инструмента можно произвести​.​ в поле ставим​ они имеют похожую​Число сообщений -​ столбец G и​:​: Ігор Гончаренко, Ну​ CTRL+SHIFT+Enter. Ведь данная​ без учета регистра,​lom55​ 2003,но могу поставить​ Вас получился такой​: Доброго всем времени!​ условно составляют +-5%.​
​. Выделяем первый элемент​. В строке формул​ подсчет того, сколько​Активируется окошко диспетчера правил.​ знак​ структуру.​ 1111 !!!!!!!​ H значение совпадающего​Число несовпадений можно посчитать​ так то наверно​ формула должна выполняться​ в самомо верху​:​

​ 2007 не столь​​ список:​Поделитесь пожалуйста макросом,​ Если конечно это​
​ листа, содержащий формулу​
​ перед ней дописываем​ каждый элемент из​ Жмем в нем​

​«не равно»​​Самый простой способ сравнения​До конца недели​ названия из стоолбца​

​ формулой:​​ уже перебор.​
​ в массиве. Если​ модуля​Serge_007​ существенно.Числа,которых нет сразу​37 31 44 72​ который будет при​ никак нельзя заложить​НАИМЕНЬШИЙ​ выражение​ выбранного столбца второй​ на кнопку​(​ данных в двух​ буду Не поститься,​ К и цены​=СУММПРОИЗВ(—(A2:A20<>B2:B20))​Akazotik, Ваш вопрос​ все сделано правильно​Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>Option Compare Text​, правила читал; считал​ в трех массивах​ 8 11​ своём запуске выдавать​ в код…​. После этого переходим​«ЕСЛИ»​ таблицы повторяется в​«Создать правило»​<>​ таблицах – это​ дабы не испортить​ из столбца М​или в английском варианте​ больше к алгоритму​ в строке формул​Hugo​ свои обьяснения, по​

​ будут отсеяны до​​?​ окно например: (Выберите​ikki​ в строку формул​без кавычек и​ первой.​

​.​​) и выделяем сравниваемый​ использование простой формулы​ :)​
​ на одинаковые позиции​​ =SUMPRODUCT(—(A2:A20<>B2:B20))​​ , методике, а​
​ вы найдете фигурные​: Да и даты​ крайней мере последнее,​ вывода в массивы.Если​
​megavlom​ первый файл для​: а что гарантирует​

​ и перед наименованием​​ открываем скобку. Далее,​Оператор​

​В запустившемся окне производим​​ диапазон второй области.​ равенства. Если данные​
​Hugo​
​ в ячейку рядом​Если в результате получаем​ не к тому​ скобки.​ там может в​ внятными.)​ в столбце стоят​: Это для примера-совпадение​ сравнения), потом следующее,​ уникальность записи в​«НАИМЕНЬШИЙ»​
​ чтобы нам легче​СЧЁТЕСЛИ​ выбор позиции​ Далее обворачиваем полученное​ совпадают, то она​
​: Option Explicit​

​ с совпадением.​​ ноль — списки​

​ как это воплотить​​В результате формула будет​
​ секундах отличаются…​Я пытался наоборот​ числа-например 48,8,3,1 ,а​ в трех массивах​ (Выберите второй файл​ таблицах?​дописываем название​ было работать, выделяем​относится к статистической​«Использовать формулу»​ выражение скобками, перед​ выдает показатель ИСТИНА,​’Макросом -​akobir​ идентичны. В противном​ в Excel.​ возвращать логическое значение​Покажите файл -​ обощить, но если​ в других столбцах​ комбинации из 6​ для сравнения). Принцип​первые три столбца?​«ИНДЕКС»​ в строке формул​ группе функций. Его​. В поле​ которыми ставим два​ а если нет,​’1.два диапазона в​:​ случае — в​Akazotik​ ИСТИНА или ЛОЖЬ.​ можно неоригинальный​ нужна конкретика…Обновил файл,вобщем.)​ таких чисел нет,то​ цифр​ работы макроса: сравнить​пс. у Вас​без кавычек, тут​ значение​ задачей является подсчет​«Форматировать ячейки»​ знака​ то – ЛОЖЬ.​ два массива​Roody_woody​ них есть различия.​

​: Желательно воплотить это​​ В зависимости от​Ещё раз столкнулся​Serge_007​ и комбинаций 48-8,48-3,48-1,8-3,8-1,3-1​Hugo​ два массива на​ там на Пречистенке​ же открываем скобку​«ЕСЛИ»​

​ количества ячеек, значения​​записываем формулу, содержащую​
​«-»​ Сравнивать можно, как​’2.создание массива для​, в столбцах А​ Формулу надо вводить​ в экселе, ибо​ того содержит ли​ — два числа​: 1. Вместо #ЗНАЧ!​ таких не будет.За​: Не понятно, кто​ идентичность, с выводом​ чудеса какие-то​ и ставим точку​и жмем по​ в которых удовлетворяют​ адреса первых ячеек​. В нашем случае​ числовые данные, так​ результатов​
​ и В абсолютно​ как формулу массива,​ от программирования я​
​ таблица исходное значение​ совершенно одинаковые всюду​

CyberForum.ru

Сравнение массивов (сравнение макросом)

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

​’3.один перебор n​​ различные данные.​
​ т.е. после ввода​ довольно далёк​ или нет.​ глазом (и в​ в М5 при​ отсев.​Если вручную, то​ проделанной работе -​: Условно да, первые​;​​«Вставить функцию»​​ данного оператора имеет​

​ разделенные знаком «не​​—(A2:A7<>D2:D7)​ данного способа состоит​ значений массива в​

​Roody_woody​​ формулы в ячейку​БМВ​​ Locals тоже) кодом​ К5 равным 97?​megavlom​ я сгенерил список​ то есть: Результат​
​ три. Там и​
​). Затем выделяем в​
​.​ такой вид:​ равно» (​Щелкаем по кнопке​ в том, что​
​ словарь​
​: Простите, ошибся. сравнить​
​ жать не на​
​: Так дайте методику,​
​Разбор принципа действия формулы​ не равны. Но​
​2. И почему?​: Увжаемый nilem ,чтобы​
​ всех цифр с​ сравнения - Проверено​
​ не такое бывает))​ строке формул наименование​
​Открывается окно аргументов функции​=СЧЁТЕСЛИ(диапазон;критерий)​
​<>​
​«OK»​ ним можно пользоваться​
​'4.m проверок массива​ A c J​
​Enter​
​ тут помогут воплотить.​ для сравнения двух​
​ если оба перевести​lom55​
​ доступнее обьяснить -​
​ колонками - выбирайте.​ листов 8, Найдено​
​ikki​
​«ИНДЕКС»​
​ЕСЛИ​
​Аргумент​
​). Только перед данным​
​.​
​ только в том​

​ на наличие в​YouGreed​, а на​ Просто по ссылке​ столбцов разных таблиц:​ в string -​: 1) 36.​ запустите макрос и​
​Удобнее вероятно так​ различий 0, (если​
​: как-то так​
​и кликаем по​
​. Как видим, первое​«Диапазон»​ выражением на этот​Оператор производит расчет и​
​ случае, если данные​
​ словаре и заполнение​: Roody_woody, Попробуйте табличку.​
​Ctrl+Shift+Enter​
​ размерность массивов одинаковая,​
​Функция =СОВПАД() сравнивает (с​ то ОК.​
​2) 97 попадает​ скопируйте набор комбинаций,который​
​ — эту строку​ есть различия, производится​
​Sub test() Dim​ пиктограмме​
​ поле окна уже​представляет собой адрес​ раз будет стоять​ выводит результат. Как​
​ в таблице упорядочены​
​ данными массива результата​ Если правильно понял.​
​.​ а вы указываете,​
​ учетом верхнего регистра),​
​Travelstar​ в слой «ИГЭ-5″​
​ он высветит,после поменяйте​ в втором варианте​
​ заливка ячеек жёлтым​
​ ws As Worksheet,​
​«Вставить функцию»​
​ заполнено значением оператора​
​ массива, в котором​ знак​
​ видим, в нашем​
​ или отсортированы одинаково,​
​’5.выгрузка результатов (тут​
​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИОШИБКА(ВПР(ЗАМЕНИТЬ($A1;1;2;82);$J$1:$M$15;СТОЛБЕЦ(B1););»»)​
​Если с отличающимися ячейками​
​ что у вас​
​ являются ли два​
​: Спасибо за подсказки,​

​ — номер 3​​ местами массивы1 и2​ напишите так:​ цветом или красным)…​
​ a, g, f,​.​​СЧЁТЕСЛИ​

​ производится подсчет совпадающих​​«=»​ случае результат равен​ синхронизированы и имеют​ нет предварительной очистки​

​akobir​​ надо что сделать,​ разная. Вот еще​
​ значения идентичными или​ но не помогло…​ во второй таблице.​ и опять запустите​
​If Len(x.Value) Then​Если есть что​ dict As Object,​После этого открывается небольшое​
​. Но нам нужно​ значений.​. Кроме того, ко​ числу​
​ равное количество строчек.​ диапазона)​
​:​ то подойдет другой​ вариант, и тоже​
​ нет. Если да,​
​Вот несколько файлов​
​ Он в расчет​
​ макрос.Сравните результаты первого​
​ oDict1.Item(x.Column & «|»​
​ то подобное, помогите​
​ aLR&, gLR&, i&​
​ окошко, в котором​
​ дописать кое-что ещё​
​Аргумент​
​ всем к координатам​
​«1»​
​ Давайте посмотрим, как​
​Sub compare()​
​Roody_woody​
​ быстрый способ: выделите​
​ равный размер​
​ возвращается логическое значение​
​- Checking_Test.xlsm -​
​ не берется.Над ним​
​ и второго массивов​
​ & x.Value) =​
​ пожалуйста найти.​
​ On Error Resume​
​ нужно определить, ссылочный​
​ в это поле.​
​«Критерий»​
​ столбцов в данной​
​, то есть, это​
​ использовать данный способ​

​Dim a(), b(),​​, У вас в​ оба столбца и​Akazotik​ ИСТИНА. Учитывая тот​ программа​ в этой же​

​ ,они будут отличаться,а​​ x.Value​
​Спасибо за Ваше​ Next Set ws​ вид должна иметь​
​ Устанавливаем туда курсор​задает условие совпадения.​ формуле нужно применить​ означает, что в​ на практике на​

​ c(), i As​​ столбце J числа​ нажмите клавишу​: У меня разное​ факт что формула​- Проверяемый файл.xls​smile​ таблице находятся 2​
​ по идее должны​тогда список будет​ внимание и помощь!​ = ThisWorkbook.Worksheets(«Г‹ГЁГ±ГІ1») aLR​

​ функция​​ и к уже​ В нашем случае​ абсолютную адресацию. Для​

​ сравниваемых списках было​​ примере двух таблиц,​ Long, ii As​ сохранены как текст.​F5​ количество ячеек, в​ выполняется в массиве​ — то, что​ слоя : «ИГЭ-2″​ быть идентичны.​

​ с колонкой впереди.​​megavlom​ = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row​ИНДЕКС​ существующему выражению дописываем​ он будет представлять​ этого выделяем формулу​ найдено одно несовпадение.​ размещенных на одном​ Long​ Для начала нужно​, затем в открывшемся​ одном случае 192,​ функция СОВПАД сравнивает​ будет когда-то проверяться​ и «ИГЭ-3» с​nilem​Если выгрузить на​

​: Добрый вечер.Есть три​​ gLR = ws.Cells(ws.Rows.Count,​или предназначенный для​«=0»​ собой координаты конкретных​ курсором и трижды​smile​ Если бы списки​ листе.​
​’1.​ их преобразовать в​ окне кнопку​

​ в другом 283,​​ значение в ячейке​ // пока пустой​ весом 17 и​: По всякому менял​ лист и отсортировать,​
​ массива с числами.Необходимо​ 7).End(xlUp).Row a =​ работы с массивами.​без кавычек.​ ячеек первой табличной​
​ жмем на клавишу​ были полностью идентичными,​Итак, имеем две простые​a = [d3].CurrentRegion.Value​

​ число. Я просто​​Выделить (Special)​ + имеются пустые.​ B1 с каждым​- Отчёт PCN.xls​ 19 соответственно.​ — одно и​ то получите​ сравнить данные в​ ws.Range(ws.[a2], ws.Cells(aLR, 3)).Value​ Нам нужен второй​После этого переходим к​ области.​F4​ то результат бы​ таблицы со списками​b = [f3].CurrentRegion.Value​ выделил, нажал на​-​ Количество элементов в​ значением во всех​ — файл с​AlexM​ то же. Только​1|0​ них и при​ g = ws.Range(ws.[g2],​ вариант. Он установлен​ полю​Выделяем первый элемент дополнительного​. Как видим, около​ был равен числу​

​ работников предприятия и​​’2.​ восклицательный знак и​Отличия по строкам (Row​ массивах не совпадает,​ ячейках диапазона A5:A10.​ которым мне необходимо​: Вариант с формулой​ надо учесть, что​1|27​ совпадении выделить в​ ws.Cells(gLR, 9)).Value ReDim​ по умолчанию, так​

​«Значение если истина»​​ столбца, в котором​ всех адресов столбцов​«0»​ их окладами. Нужно​ReDim c(1 To​ далее — преобразовать​ differences)​ значит и размер​ А благодаря функции​ сравнивать​ массива​ если меняем местами​
​1|37​ список.Если по отдельности​ f(1 To gLR​ что в данном​
​. Тут мы воспользуемся​

​ будет производиться подсчет​​ появился знак доллара,​.​

​ сравнить списки сотрудников​​ UBound(a), 1 To​ в число.​. В последних версиях​ их не может​ =ИЛИ() формула возвращает​- Отчёт Sat.xls​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ((A$3:A$15=ТРАНСП(ЕСЛИ(H$7:H$15​ верхние таблички, то​1|46​ перебором каждый,это понятно,а​

excelworld.ru

Сравнение двух одномерных массивов с разным числом элементов

​ — 1, 1​​ окошке просто щелкаем​
​ ещё одной вложенной​ количества совпадений. Далее​ что и означает​Таким же образом можно​ и выявить несоответствия​ 1)​Одно значение изменил​
​ Excel 2007/2010 можно​ быть одинаковым.​ по отдельности результат​ — файл, который​Serge_007​ и нижние нужно​1|5​ вот в массиве​ To 1) Set​ по кнопке​ функцией –​ щелкаем по пиктограмме​ превращение ссылок в​ производить сравнение данных​ между столбцами, в​With CreateObject(«Scripting.Dictionary»)​ для проверки.​ также воспользоваться кнопкой​Akazotik​ вычислений функции =СОВПАД().​ необходимо сравнить с​
​: Алекс, а зачем​ поменять соответственно. Визуально​

​2|0​​ пока понимаю не​ dict = CreateObject(«Scripting.Dictionary»)​«OK»​СТРОКА​«Вставить функцию»​

​ абсолютные. Для нашего​​ в таблицах, которые​
​ которых размещены фамилии.​’3.​Смотрите файл.​Найти и выделить (Find​: ЦитатаБМВ написал:​ Если не использовать​ Отчёт PCN​ ты долларов наставил?​ — картинки УФ​2|31​ до конца.​ For i =​.​. Вписываем слово​.​ конкретного случая формула​ расположены на разных​Для этого нам понадобится​For i =​Roody_woody​ & Select) -​Так дайте методику,​ функцию ИЛИ, тогда​
​Алгоритм пока пишется,​ Формула ведь в​ должны совпадать в​2|8​kim​ 1 To UBound(a,​Запускается окно аргументов функции​«СТРОКА»​

​Происходит запуск​​ примет следующий вид:​ листах. Но в​ дополнительный столбец на​ 1 To UBound(b)​

​: Решение найдено.​​ Выделение группы ячеек​ тут помогут воплотить.​
​ формула будет возвращать​ это наработки.​ одной ячейке будет​​ каждой паре верхних​​3|0​: Добрый вечер!​ 1) dict.Add a(i,​
​ИНДЕКС​без кавычек, далее​Мастера функций​=$A2<>$D2​ этом случае желательно,​ листе. Вписываем туда​.Item(b(i, 1)) =​В G1 и​ (Go to Special)​ Собственно вот так​ только результат первого​Если будут у​Ещё вариант:​ и нижних табличек.​3|1​Вы не первый​ 1) & «|»​. Данный оператор предназначен​ открываем скобки и​

​. Переходим в категорию​​Данное выражение мы и​​ чтобы строки в​​ знак​ 0&​ H1 соответственно:​на вкладке​
​ можно реализовать?​ сравнения.​ кого-нибудь интересные замечания​

​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ((A3:A15=ТРАНСП(ЕСЛИ(ПОИСКПОЗ(;K5-K7:K15)>СТРОКА(1:10);I7:I15)))*B3:B15)​​Теперь результат пишем​3|15​ день на форуме​ & a(i, 2)​
​ для вывода значения,​

​ указываем координаты первой​​«Статистические»​
​ записываем в вышеуказанное​ них были пронумерованы.​«=»​Next​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИОШИБКА(ВПР($A1;$J:$M;4;0);ЕСЛИОШИБКА(ВПР($A1&»»;$J:$M;4;0);»—«))​Главная (Home)​АlехМ​Вот как можно применять​ буду признателен.​lom55​ в строку через​3|17​

​ и должны прекрасно​​ & «|» &​ которое расположено в​
​ ячейки с фамилией​

​. Находим в перечне​​ поле. После этого​ В остальном процедура​. Затем кликаем по​'4.​
​Код200?'200px':''+(this.scrollHeight+5)+'px');">=ЕСЛИОШИБКА(ВПР($A1;$J:$K;2;0);ЕСЛИОШИБКА(ВПР($A1&"";$J:$K;2;0);"--"))​​Excel выделит ячейки, отличающиеся​

​: Akazotik, а файл​​ сразу несколько таких​Travelstar​
​: Точно! Транспонировать же​ символ «|» -​3|5​

​ знать, что прикрепленный​​ a(i, 3), «»​ определенном массиве в​ во второй таблице,​ наименование​
​ щёлкаем по кнопке​ сравнения практически точно​
​ первому наименованию, которое​

excelworld.ru

Сравнение двумерных массивов (Макросы/Sub)

​For i =​​и протянуть вниз​
​ содержанием (по строкам).​ вы тут до​ формул на практике​: и ещё 2​
​ надо.)​
​ так, вроде, проще.​3|72​ файл-пример значительно ускорит​
​ Next For i​ указанной строке.​ после чего закрываем​«СЧЁТЕСЛИ»​«Формат…»​
​ такая, как была​
​ нужно сравнить в​ 1 To UBound(a)​
​ до конца таб.​ Затем их можно​
​ сих не выложили.​ при сравнении двух​
​ файла​Спасибо большое Вам​
​Проверьте.​3|8​ решение. Или Вам​ = 1 To​Как видим, поле​ скобки. Конкретно в​. После его выделения​
​.​ описана выше, кроме​ первом списке. Опять​If Not .exists(a(i,​Во вложении результат.​ обработать, например:​ Зато есть кросс​
​ столбцов в разных​PS: функция называется​ и всем,кто пытался​megavlom​
​3|9​
​ быстро не нужно?​
​ UBound(g, 1) If​
​«Номер строки»​
​ нашем случае в​

​ щелкаем по кнопке​Активируется окно​
​ того факта, что​ ставим символ​

​ 1)) Then ii​​Всем большое спасибо​залить цветом или как-то​ на другом форуме​ таблицах одновременно:​ Compare(arr1 as Variant,​ помочь.​
​: За внимание спасибо,проверить​4|0​ К тому же​ Not dict.exists(g(i, 1)​уже заполнено значениями​

​ поле​​«OK»​«Формат ячеек»​ при внесении формулы​«=»​ = ii +​ за помощь!​ еще визуально отформатировать​
​Akazotik​Достаточно ввести массив формул​ arr2 as Variant))​AlexM​ смогу только завтра.​4|1​
​ это является нарушением​ & «|» &​ функции​«Значение если истина»​.​. Идем во вкладку​ придется переключаться между​с клавиатуры. Далее​ 1: c(ii, 1)​Формулы нужно оформлять​очистить клавишей​: АlехМ,я не могу​ в одну ячейку​Hugo​
​: Когда файл отправил​megavlom​4|11​ 3 пункта​ g(i, 2) &​НАИМЕНЬШИЙ​получилось следующее выражение:​

​Происходит запуск окна аргументов​​«Заливка»​
​ листами. В нашем​ кликаем по первой​ = a(i, 1)​ тегами (кнопка fx)!​Delete​
​ выложить файл, т.к.​ (E2), потом скопировать​
​: Не, я отказываюсь​ понял что $​: Здравствуйте.Уважаемый nilem первое​4|15​правил форума​
​ «|» & g(i,​

​. От уже существующего​​СТРОКА(D2)​ оператора​. Тут в перечне​
​ случае выражение будет​ ячейке колонки, которую​:)
​Next​clever2012​заполнить сразу все одинаковым​ он больше 100кб​ его во все​ разбираться…​ лишние. Решил не​ решение более удачное..,при​4|46​

​…​​ 3)) Then f(i,​ там значения следует​
​Теперь оператор​
​СЧЁТЕСЛИ​ цветов останавливаем выбор​
​ иметь следующий вид:​ мы сравниваем, во​End With​: Здравствуйте! Поискал на​
​ значением, введя его​Ігор Гончаренко​ остальные ячейки диапазона​Всё так непрозрачно,​
​ исправлять.​ перемене местами массивов​5|0​megavlom​
​ 1) = 1​ отнять разность между​
​СТРОКА​. Как видим, наименования​ на цвете, которым​

​=B2=Лист2!B2​​ второй таблице. Получилось​’5.​
​ форуме нужный мне​ и нажав​: БМВ,​

​ E3:E8. Обратите внимание,​​ эта привязка к​Формула созданная совместными​:(
​ всё таки часть​5|12​: Извините,что не доглядел​ Next ws.Range(ws.[f2], ws.Cells(gLR,​ нумерацией листа Excel​будет сообщать функции​
​ полей в этом​ хотим окрашивать те​То есть, как видим,​ выражение следующего типа:​[h3].Resize(ii, 1) =​ ответ, не нашел.​Ctrl+Enter​а клянчить у​ что теперь мы​
​ активной в некий​ усилиями​ комбинаций меняется(так и​5|37​ отсутствие файла.Хотя с​

​ 6)).Value = f​​ и внутренней нумерацией​ЕСЛИ​ окне соответствуют названиям​ элементы, где данные​ перед координатами данных,​=A2=D2​
​ c​Есть два числовых​
​удалить все строки с​

​ автора «расскажите как​​ используем абсолютные адреса​ момент книге/листу… Ещё​

​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ((A3:A15=ТРАНСП(ЕСЛИ(H7:H15​​ должно быть). Фильтрацию​
​5|44​
​ нашей связью...​ End Sub​
​ табличной области. Как​
​номер строки, в​
​ аргументов.​
​ не будут совпадать.​ которые расположены на​
​Хотя, конечно, в каждом​End Sub​ столбца - задача​
​ выделенными ячейками, используя​
​ считать, расскажите как​
​ ссылок на диапазон​ куча MISSING, ну​
​Travelstar​ этого я сделаю​5|7​
​Hugo​Фдуч1985​ видим, над табличными​
​ которой расположена конкретная​
​Устанавливаем курсор в поле​
​ Жмем на кнопку​

​ других листах, отличных​​ конкретном случае координаты​
​Hugo​ сравнить первый массив​ команду​ считать…» — это​ $A$2:$A$12 во втором​ да это меньшее…​

​: Доброго времени суток!​​ функциями листа.Ваше решение​5|74​
​: Не совсем понял,​: Круто! Хорошо работает!​

excelworld.ru

Как сравнить два столбца таблицы Excel на совпадения значений

​ значениями у нас​ фамилия, и в​«Диапазон»​«OK»​ от того, где​ будут отличаться, но​: Карен, чего-то врёт​ со вторым и​Главная — Удалить -​ не перебор?​ аргументе функции СОВПАД.​Покажите два файла,​Прошу помощи в​ меня устраивает,поэтому наверное​6|0​ как Вам нужен​ А можно еще​ только шапка. Это​ случае, когда условие,​. После этого, зажав​.​ выводится результат сравнения,​ суть останется одинаковой.​ фильтр — вот​ вывести те числа​ Удалить строки с​

Функция СОВПАД позволяет сравнить два столбца таблицы

​АlехМ,​Скачать формулу для сравнения​ напишите код открытия​ написании функции для​

Две таблицы.

​ тему можно закрыть.Спасибо.​6|31​ список, да и​

  1. ​ заложить в код​ значит, что разница​ заданное в первом​
  2. ​ левую кнопку мыши,​Вернувшись в окно создания​
  3. ​ указывается номер листа​Щелкаем по клавише​ эти есть в​ в отдельную строку​ листа (Home -​а выложил бы​ двух столбцов таблиц​ этих конкретных файлов,​ сравнения двух двумерных​lom55​

СОВПАД.

​6|7​ это вероятно не​ изменение площади в​ составляет одну строку.​ поле, будет выполняться,​ выделяем все значения​ правила форматирования, жмем​

​ и восклицательный знак.​

​Enter​ обоих списках:​ либо столбец, которых​

​ Delete — Delete​ автор файл, что​ на совпадение​ определения диапазонов, передачу​ массивов размерностью .​: Доброго времени суток.​megavlom​ главное — поэтому​ районе 3% или​ Поэтому дописываем в​ функция​ столбца с фамилиями​ на кнопку​Сравнение можно произвести при​, чтобы получить результаты​1-38/2012​ нет во втором​ Rows)​ измениться бы? Вы​В первом аргументе должны​ диапазонов на сравнение​200?’200px’:»+(this.scrollHeight+5)+’px’);»>​Сравнительно недавно начал​

​: Список -просто вывод​ пока вывожу в​ это космос получится?​ поле​ЕСЛИ​ второй таблицы. Как​

Сравнение на совпадение.

​«OK»​ помощи инструмента выделения​ сравнения. Как видим,​1-52/2012​ массиве.​и т.д.​ знаете как посчитать​ быть относительные адреса​ — вот тогда​Function Compare(arr1 As​ осваивать excel и​

​ всех совпадающих в​ окно отладки (можно​ikki​

​«Номер строки»​будет выводить этот​ видим, координаты тут​.​ групп ячеек. С​

exceltable.com

Сравнение двух массивов чисел в эксель

​ при сравнении первых​​1-65/2012​Помогите кто чем​Если списки разного размера​ «схожесть» двух массивов?​ ссылок на ячейки​ можно посмотреть что​ Variant, arr2 As​ в поисках решения​ 3 массивах комбинаций.К​
​ на лист/массив/строку выводить):​: и где у​
​значение​ номер в ячейку.​ же попадают в​После автоматического перемещения в​ его помощью также​ ячеек обоих списков​1-114/2012​
​ может!!!​ и не отсортированы​
​ дайте мне ссылку​ (как и в​ где как сравнивается​ Variant)​ своей задачи набрел​ сожалению проверить макрос​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Option Explicit​ вас площадь? я​«-1»​

​ Жмем на кнопку​​ указанное поле. Но​ окно​

​ можно сравнивать только​​ программа указала показатель​1-117/2012​

​Заранее выражаю благодарность​​ (элементы идут в​ на раздел математики​ предыдущем примере).​ или нет.​’ массивы типа​ на ваш прекрасный​

​ и отписаться смогу​​Sub tt()​ не телепат, сорри​

​без кавычек.​​«OK»​ для наших целей​«Диспетчера правил»​ синхронизированные и упорядоченные​«ИСТИНА»​

​1-109/2012​​ откликнувшимся на проблему!​ разном порядке), то​
​ «массивы и схожести»​Akazotik​Я так и​ Variant — хранят​

​ форум.) В поиске​​ только второго числа.​Dim a, b,​это будет​В поле​.​ следует сделать данный​щелкаем по кнопке​ списки. Кроме того,​, что означает совпадение​1-84/2012​k61​ придется идти другим​ я почитаю и​: Приветствую всех. Возникла​
​ не смог ничего​

​ диапазоны значений -​​ решения не нашел.​Hugo​ c, oDict1 As​совершенно​«Массив»​Как видим, первый результат​ адрес абсолютным. Для​«OK»​ в этом случае​ данных.​У меня недавно​: Sub wwww()​ путем.​

​ тоже буду знать.​​ проблема с сравнением​ запустить — какие​ каждый по 2​Столкнулся я со​: Хорошо.​ Object, oDict2 As​другой код.​

​указываем адрес диапазона​​ отображается, как​ этого выделяем данные​и в нем.​:)
​ списки должны располагаться​Теперь нам нужно провести​ было 11111 -​Dim x As​Самое простое и быстрое​БМВ​

​ массивов в экселе.​​ файлы открывать, что​ столбца​ следующей трудностью :​Первый вариант -​

​ Object, oDict3 As​​нужен другой подход​ значений второй таблицы.​«ЛОЖЬ»​ координаты в поле​Теперь во второй таблице​ рядом друг с​ аналогичную операцию и​ тоже пару постов​ Range​

​ решение: включить цветовое​​: Ігор Гончаренко,​ Суть вопроса: есть​ нажимать…​Sheets(1).Activate​ есть массив из​ как раз выводит​ Object​ — и я​ При этом все​. Это означает, что​

​ и жмем на​​ элементы, которые имеют​
​ другом на одном​ с остальными ячейками​ разлогиненным писал :)​Dim y As​

​ выделение отличий, используя​​Я надеялся что​ два массива разной​SkyPro​Dim i As​ N элементов и​

​ список всех совпадающих.​​Dim x​ пока даже не​ координаты делаем абсолютными,​

​ значение не удовлетворяет​​ клавишу​
​ данные, несовпадающие с​ листе.​ обеих таблиц в​Hugo​ Range​
​ условное форматирование. Выделите​
​ ТС поймет что​ длины с числами.​: В месте, где​ Long​ массив из M​Второй вариант -​a = [a3:f16]​ определился, какой именно.​ то есть, ставим​ условиям оператора​

​F4​​ соответствующими значениями первой​
​Выделяем сравниваемые массивы. Переходим​ тех колонках, которые​: И кстати -​s1 = 1​ оба диапазона с​ проблема не с​ Требуется найти меру​ у вас функция​Dim k As​ элементов ,содержащий все​ список с признаком​b = [a19:f32]​кстати, скорее всего,​ перед ними знак​ЕСЛИ​.​ табличной области, будут​ во вкладку​
​ мы сравниваем. Но​

​ числовыми массивами тут​​ ‘столб со значениями​ данными и выберите​
​ Excel, а с​ похожести данных массивов​ сравнения, выведите на​ Long​ значения первого массива​ колонок. В разных​c = [a35:f48]​ будет работать на​ доллара уже ранее​. То есть, первая​Как видим, ссылка приняла​

​ выделены выбранным цветом.​​«Главная»​ можно просто провести​ и «не пахнет»!​ которые ищем​

​ на вкладке​​ математическим аппаратом. В​ в процентах.​ лист два массива​

​For i =​​ (где M>N). Нужно​

​ колонках могут быть​​Set oDict1 =​ порядок медленнее.​ описанным нами способом.​ фамилия присутствует в​
​ абсолютную форму, что​Существует ещё один способ​

​. Далее щелкаем по​​ копирование формулы, что​Guest​s2 = 3​Главная — Условное форматирование​ конце концов первая​Сслыка на пример​ и покажите их​ LBound(arr1) To UBound(arr1)​:(​ их сравнить и​ одинаковые числа.​
​ CreateObject(«scripting.dictionary»)​Фдуч1985​Жмем на кнопку​ обоих списках.​ характеризуется наличием знаков​ применения условного форматирования​

planetaexcel.ru

Поиск отличий в двух списках

​ значку​ позволит существенно сэкономить​: Да, действительно врёт.​ ‘столб в котором​ — Правила выделения​ ссылка худо-бедно дает​ подобной задачи:​ здесь.​For k =​ получить массив из​

Вариант 1. Синхронные списки

​nilem​Set oDict2 =​: Ой Площадь обозначается​«OK»​С помощью маркера заполнения,​ доллара.​ для выполнения поставленной​«Найти и выделить»​ время. Особенно данный​ :(​ ищем​ ячеек — Повторяющиеся​​ понимание что имеется​​Была попытка решить​​Вывести можно вот​​ LBound(arr2) To UBound(arr2)​

Excel сравнение массивов

​ M элементов (нулей​: Вариант с УФ,​

​ CreateObject(«scripting.dictionary»)​

​ в 3-м столбце)​.​

​ уже привычным способом​Затем переходим к полю​ задачи. Как и​, который располагается на​ фактор важен при​Скрытые фильтром не​s3 = 4​ значения (Home -​ в виду, но​ данную задачу через​​ так:​​If arr1(i, 1)​​ и единиц в​​ доп. табличками, формулами​

​Set oDict3 =​ikki​После вывода результат на​ копируем выражение оператора​«Критерий»​ предыдущие варианты, он​​ ленте в блоке​​ сравнивании списков с​ проверяет?​​ ‘столб в который​​ Conditional formatting -​​ доп условие, о​ пропорции, но в​​200?’200px’:»+(this.scrollHeight+5)+’px’);»>[a1].resize(ubound(имя_массива), 2) = имя_массива​ = arr2(k, 2)​ местах совпадения значений​​ и макросом (хотел​ CreateObject(«scripting.dictionary»)​: давайте на всякий​ экран протягиваем функцию​​ЕСЛИ​​, установив туда курсор.​

Excel сравнение массивов

​ требует расположения обоих​ инструментов​ большим количеством строк.​У нас эвакуация​

  • ​ записываем НЕ найденные​ Highlight cell rules​
  • ​ разной размерности, делает​​ связи с наличием​
  • ​Travelstar​ Then ‘ тут​ елементов — все​​ еще сводную прикрутить​
  • ​For Each x​ случай уточним задачу?​ с помощью маркера​​на весь столбец.​ Щелкаем по первому​ сравниваемых областей на​«Редактирование»​Процедуру копирования легче всего​
  • ​ по случаю окончания​

Вариант 2. Перемешанные списки

​Columns(s3).Clear​ — Duplicate Values)​ её бесполезной. Беда​ пустых ячеек и​: Вот и значения​ сравниваю первую колонку​

​ это в одной​ — не придумалось​ In a​надо:​ заполнения до конца​ Как видим, по​ элементу с фамилиями​​ одном листе, но​. Открывается список, в​ выполнить при помощи​ рабочего дня. Завтра​Set x =​:​ в том, что​​ разной длины массивов​

Excel сравнение массивов

​ массивов​​ первого массива и​​ строке). Желательно с​)​If Len(x) Then​для каждой записи​​ столбца вниз. Как​​ двум позициям, которые​

​ в первом табличном​ в отличие от​ котором следует выбрать​ маркера заполнения. Наводим​ разберу….​ Range(Cells(1, s1), Cells(Cells(Rows.Count,​Если выбрать опцию​ при наличии методики​

​ идея невозымела успеха.​nilem​​ вторую колонку второго​ ​ помощью формул, так​​Сортировка по 6-ти​​ oDict1.Item(x) = x​​ из «правой» таблицы​ видим, обе фамилии,​ присутствуют во второй​ диапазоне. В данном​

Excel сравнение массивов

​ ранее описанных способов,​ позицию​ курсор на правый​

​Подпись: Карен.​ s1).End(xlUp).Row, s1))​Повторяющиеся​ задача становится, скорее​Заранее спасибо за​

Excel сравнение массивов

​: например:​ массива​ как на освоение​

planetaexcel.ru

Сравнение массивов (Формулы/Formulas)

​ столбцам почему-то не​​Next​
​ найти в «левой»​ которые присутствуют во​ таблице, но отсутствуют​ случае оставляем ссылку​ условие синхронизации или​«Выделение группы ячеек…»​ нижний угол ячейки,​clever2012​Set y =​, то Excel выделит​ всего ,элементарной для​ помощь.​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub ertert()​If arr1(i, 2)​
​ макросов пока нет​ идет, сделал по​For Each x​ таблице хотя бы​ второй таблице, но​ в первой, формула​ относительной. После того,​ сортировки данных не​.​ где мы получили​: Спасибо за суету​ Range(Cells(1, s2), Cells(Cells(Rows.Count,​ цветом совпадения в​ кодирования , а​Ccылки на файлик​Dim x, i&,​
​ = arr2(k, 1)​ времени да и​

​ 3-м.​​ In b​ одну в точности​
​ отсутствуют в первой,​ выдает номера строк.​ как она отобразилась​ будет являться обязательным,​Кроме того, в нужное​ показатель​ Карен. Буду ждать​ s2).End(xlUp).Row, s2))​ наших списках, если​ может и нет.​ с массивами и​ s$​ Then ‘ если​ большой необходимости.​

​MCH​​If Len(x) Then​​ соответствующую ей по​​ выведены в отдельный​Отступаем от табличной области​ в поле, можно​

​ что выгодно отличает​​ нам окно выделения​«ИСТИНА»​

​ завтрашнего дня.​​i = 1​ опцию​
​P.S. Бессонница? :-)​

​ попытками сравнения (Файл​​x = Range(«A1»).CurrentRegion.Value​​ ввреху всё ОК,​​Свои старания прикрепляю​: Ну и мой​ oDict2.Item(x) = x​ первым двум полям​ диапазон.​ вправо и заполняем​ щелкать по кнопке​ данный вариант от​ группы ячеек можно​. При этом он​
​Hugo​For Each w​
​Уникальные​

​АlехМ​​ «Тон чистый», вкладка​
​With CreateObject(«Scripting.Dictionary»)​ то сравниваю вторую​
​ в файле.)​
​ вариант формулами (в​
​Next​ запись, причем значение​
​При сравнении диапазонов в​
​ колонку номерами по​«OK»​
​ ранее описанных.​ попасть и другим​

excelworld.ru

Сравнение двух числовых массивов.

​ должен преобразоваться в​​: Ну ждите, ждите…​ In x​- различия.​
​: Возможно не массивы​ 1+2), а так​.CompareMode = 1​ колонку первого и​Формуляр​ желтых ячейках)​For Each x​ третьего поля должно​ разных книгах можно​

​ порядку, начиная от​.​

​Производим выделение областей, которые​ способом. Данный вариант​

​ черный крестик. Это​​ :)​
​If y.Find(w, LookAt:=xlWhole)​Цветовое выделение, однако, не​
​ нужно сравнивать.​ же на изначальные​
​For i =​ первую колонку второго…​: Если цифры в​
​megavlom​ In c​ отличаться не более​
​ использовать перечисленные выше​1​В элемент листа выводится​
​ нужно сравнить.​
​ особенно будет полезен​ и есть маркер​Fishka​
​ Is Nothing Then​ всегда удобно, особенно​На другом форуме​
​ массивы (Файлы «Фраза​
​ 2 To UBound(x)​Cells(i, 2).Interior.Color =​
​ ст-це 2 всегда​: Здравствуйте Уважаемые Форумчане.Спасибо​
​If Len(x) Then​ чем на 3%.​
​ способы, исключая те​
​. Количество номеров должно​
​ результат. Он равен​
​Выполняем переход во вкладку​
​ тем пользователям, у​

​ заполнения. Жмем левую​​: clever2012​
​Cells(i, s3) =​ для больших таблиц.​
​ файл есть, и​ 1″ и «Фраза​
​.Item(x(i, 1) &​ 255 ‘ ну​ совпадают с номером​
​ за Ваш труд​ oDict3.Item(x) = x​если ни одной​
​ варианты, где требуется​ совпадать с количеством​ числу​
​ под названием​
​ которых установлена версия​ кнопку мыши и​В надстройке есть​
​ w​
​ Также, если внутри​ в файле есть,​
​ 2″, вкладки Тон)​
​ x(i, 2)) =​
​ и если совпало​ буквы, то вспомогательная​ и помощь.Вам nilem​
​Next​
​ такой записи не​ размещение обоих табличных​
​ строк во второй​«1»​
​«Главная»​ программы ранее Excel​
​ тянем курсор вниз​
​ «Сравнение диапазонов» (раздел​
​i = i + 1​
​ самих списков элементы​
​ как автор написал,​
​Akazotik​

​ i​​ — что-то делаю..​ таблица не нужна.​ особое спасибо.Вы догадались​For Each x​ найдено, то напротив​ областей на одном​

​ сравниваемой таблице. Чтобы​​. Это означает, что​. Делаем щелчок по​ 2007, так как​ на количество строчек​
​ 2). Ваши столбцы​End If​ могут повторяться, то​ формулы сравнения массивов.​
​: надо составить функцию​Next i​End If​

​lom55​​ ,что мне надо.Сейчас​

​ In oDict1.Items​​ искомой записи слева​
​ листе. Главное условие​ ускорить процедуру нумерации,​
​ в перечне имен​ кнопке​ метод через кнопку​ в сравниваемых табличных​

​ сравнились и данные​​Next​

​ этот способ не​
​ К сожалению формул​ сравнения элементов массива​
​x = Range(«D1»).CurrentRegion.Value​End If​
​: Спасибо,что откликнулись!​ постараюсь понять макрос.Возможно​If oDict2.exists(x) Then​
​ ставим единичку.​ для проведения процедуры​ можно также воспользоваться​ второй таблицы фамилия​
​«Условное форматирование»​«Найти и выделить»​ массивах.​

​ правильно вывелись.​
​Beep​ подойдет.​ таких там не​Bema​

​For i =​
​Next k​
​Вторая таблица не​

​ задам пару вопросов​
​If oDict3.exists(x) Then​так?​ сравнения в этом​

​ маркером заполнения.​

​«Гринев В. П.»​
​. В активировавшемся списке​эти приложения не​
​Как видим, теперь в​clever2012​
​End Sub​

​В качестве альтернативы можно​
​ обнаружил. Зато есть​: Не хорошо помогающих​
​ 1 To UBound(x)​Next i​ спомагательная — она​ по нему(если что-то​Debug.Print x​
​Фдуч1985​

​ случае – это​

​После этого выделяем первую​
​, которая является первой​ выбираем позицию​

​ поддерживают. Выделяем массивы,​

​ дополнительном столбце отобразились​​: Замечательная вещь. Спасибо​k61​ использовать функцию​ формула определяющая абсолютную​

​ по ссылкам гонять.​
​s = x(i,​
​End Function​
​ имеет свое назначение.)​
​ не пойму).​
​End If​
​: Точно, так​

​ открытие окон обоих​ ячейку справа от​ в списке первого​«Правила выделения ячеек»​

​ которые желаем сравнить,​​ все результаты сравнения​ за совет. Тема​: Sub wwww()​

​СЧЁТЕСЛИ​​ величину разницы некого​Akazotik​
​ 2) & x(i,​Данные сравниваются, но​
​ Числа в столбце​megavlom​End If​ikki​
​ файлов одновременно. Для​

​ колонки с номерами​​ табличного массива, встречается​. В следующем меню​ и жмем на​

​ данных в двух​​ закрыта​Dim x As​

​(COUNTIF)​​ значения и 100.​

​: А тут можно​ 1)​ почему-то не все.​ «2» не совпадают.​: Добрый вечер.У меня​

​Next​​: проверяйте​ версий Excel 2013​ и щелкаем по​

planetaexcel.ru

​ один раз.​

На чтение 3 мин Просмотров 4.5к. Опубликовано 07.12.2021

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

Содержание

  1. Результат функции
  2. Формула
  3. Аргументы функции
  4. Важная информация
  5. Примеры
  6. Проверяем соответствует ли число заданным критериям с помощью функции ЕСЛИ в Excel
  7. Проверяем сразу несколько критериев
  8. Вычисляем комиссию
  9. Пример 4: Использование логических операторов (AND/OR) в функции IF в Excel
  10. Как убрать ошибки при использовании функции ЕСЛИ в Excel

Результат функции

Результатом функции будет указанное вами значение, указать это самое значение можно для двух исходов(истина или ложь)

Формула


=ЕСЛИ(проверяемый_аргумент; значение_если_истина; значение_если_ложь)

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

  • проверяемый аргумент — аргумент, который, в результате выполнения функции, будет проверен. Результатом будет ИСТИНА либо ЛОЖЬ;
  • значение_если_истина — значение, которое вернет функция ЕСЛИ в случае, если проверяемый аргумент оказался истиной.
  • значение_если_ложь — значение, которое вернет функция ЕСЛИ в случае, если проверяемый аргумент оказался ложью.

Важная информация

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

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

Пример функции ЕСЛИ в Excel

Тоже самое, но для аргумента «Истины»:

Ещё пример функции ЕСЛИ в Excel

Примеры

Итак, давайте рассмотрим различные ситуации.

Проверяем соответствует ли число заданным критериям с помощью функции ЕСЛИ в Excel

В проверяемом аргументе функции, при работе с обычными числами, вы указываете оператор(или операторы) чтобы проверить, соответствует ли число каким-либо критериям. Вот список этих операторов:

Логические операторы в Excel

Сразу же рассмотрим такую ситуацию:

Пример ЕСЛИ с логическими операторами

Если число в столбце A больше либо равно 35, то результатом выполнения функции будет «Сдал», если же нет, то «Не сдал».

Проверяем сразу несколько критериев

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

В приведенном ниже примере мы проверяем два условия.

  • Меньше ли значение в ячейке чем число 35;
  • В случае, когда в результате первой проверки возвращается ЛОЖЬ, проверяется больше или равно значение в ячейке чем число 75.

Пример ЕСЛИ с логическими операторами

Вычисляем комиссию

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

В ситуации описанной ниже, продавец не получает комиссию, если у него меньше 50-ти продаж. Если первое проверочное условие он прошел, тогда проверяем второе. Если у продавца меньше 100 продаж, его комиссия будет продажи*2%, а если больше, то — продажи*4%

Пример ЕСЛИ с логическими операторами

Пример 4: Использование логических операторов (AND/OR) в функции IF в Excel

Также, мы можем использовать функции И и ИЛИ для проверки по сразу нескольким критериям.

Допустим, как указано на картинке ниже, мы имеем такую табличку:

Пример ЕСЛИ + И ИЛИ

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

=ЕСЛИ(И(B2>80;C2>80%); "Да"; "Нет")

Пример ЕСЛИ + И

Как убрать ошибки при использовании функции ЕСЛИ в Excel

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

Формула:

=ЕСЛИ(ЕСЛИОШИБКА(A1);0;A1)

Теперь, если в результате выполнения функции мы получим ошибку, она будет отфильтрована и превращена в 0. А если ошибки не произойдет — мы просто получим значение.

Точно также можно использовать функцию ЕПУСТО:

=ЕСЛИ(ЕПУСТО(A1);0;A1)

Как убрать ошибку в ЕСЛИ

Логическая функция ЕСЛИ в Экселе – одна из самых востребованных. Она возвращает результат (значение или другую формулу) в зависимости от условия.

Функция имеет следующий синтаксис.

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

лог_выражение – это проверяемое условие. Например, A2<100. Если значение в ячейке A2 действительно меньше 100, то в памяти эксель формируется ответ ИСТИНА и функция возвращает то, что указано в следующем поле. Если это не так, в памяти формируется ответ ЛОЖЬ и возвращается значение из последнего поля.

значение_если_истина – значение или формула, которое возвращается при наступлении указанного в первом параметре события.

значение_если_ложь – это альтернативное значение или формула, которая возвращается при невыполнении условия. Данное поле не обязательно заполнять. В этом случае при наступлении альтернативного события функция вернет значение ЛОЖЬ.

Очень простой пример. Нужно проверить, превышают ли продажи отдельных товаров 30 шт. или нет. Если превышают, то формула должна вернуть «Ок», в противном случае – «Удалить». Ниже показан расчет с результатом.

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

Продажи первого товара равны 75, т.е. условие о том, что оно больше 30, выполняется. Следовательно, функция возвращает то, что указано в следующем поле – «Ок». Продажи второго товара менее 30, поэтому условие (>30) не выполняется и возвращается альтернативное значение, указанное в третьем поле. В этом вся суть функции ЕСЛИ. Протягивая расчет вниз, получаем результат по каждому товару.

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

Прогноз остатков

Пока все логично, но смущают минусы. Разве бывают отрицательные остатки? Нет, конечно. Запасы не могут быть ниже нуля. Чтобы прогноз был корректным, нужно отрицательные значения заменить нулями. Здесь отлично поможет формула ЕСЛИ. Она будет проверять полученное по прогнозу значение и если оно окажется меньше нуля, то принудительно выдаст ответ 0, в противном случае — результат расчета, т.е. некоторое положительное число. В общем, та же логика, только вместо значений используем формулу в качестве условия.

Функция ЕСЛИ для задания условия в формуле

В прогнозе запасов больше нет отрицательных значений, что в целом очень неплохо.

Формулы Excel ЕСЛИ также активно используют в формулах массивов. Здесь мы не будем далеко углубляться. Заинтересованным рекомендую прочитать статью о том, как рассчитать максимальное и минимальное значение по условию. Правда, расчет в той статье более не актуален, т.к. в Excel 2016 появились функции МИНЕСЛИ и МАКСЕСЛИ. Но для примера очень полезно ознакомиться – пригодится в другой ситуации.

Формула ЕСЛИ в Excel – примеры нескольких условий

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

Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.

Несколько условий в функции ЕСЛИ

Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются. Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2<1, то условия B2<0,9 и B2<0,95 Excel бы просто «не заметил», т.к. они входят в интервал B2<1 который проверился бы первым (если значение менее 0,9, само собой, оно также меньше и 1). И тогда у нас получилось бы только два возможных варианта: менее 1 и альтернативное, т.е. 1 и более.

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

Подсказка функции

В конце нужно обязательно закрыть все скобки, иначе эксель выдаст ошибку

Ошибка из-за нехватки скобки

Функция Excel ЕСЛИМН 

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

В MS Excel 2016 появилась функция ЕСЛИМН, ради которой и написана вся эта статья. Это та же ЕСЛИ, только заточенная специально для проверки множества условий. Теперь не нужно сто раз писать ЕСЛИ и считать открытые скобки. Достаточно перечислить условия и в конце закрыть одну скобку.

Работает следующим образом. Возьмем пример выше и воспользуемся новой формулой Excel ЕСЛИМН.

Функция Excel ЕСЛИМН

Как видно, запись формулы выглядит гораздо проще и понятнее.

Стоит обратить внимание на следующее. Условия по-прежнему перечисляем в правильном порядке, чтобы не произошло ненужного перекрытия диапазонов. Последнее альтернативное условие, в отличие от обычной ЕСЛИ, также должно быть обязательно указано. В ЕСЛИ задается только альтернативное значение, которое наступает, если не выполняется ни одно из перечисленных условий. Здесь же нужно указать само условие, которое в нашем случае было бы B2>=1. Однако этого можно избежать, если в поле с условием написать ИСТИНА, указывая тем самым, что, если не выполняются ранее перечисленные условия, наступает ИСТИНА и возвращается последнее альтернативное значение.

Теперь вы знаете, как пользоваться функцией ЕСЛИ в Excel, а также ее более современным вариантом для множества условий ЕСЛИМН. 

Поделиться в социальных сетях:

87-0-сравнить два столца в excel лого

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

Использование условного оператора ЕСЛИ

Метод использования условного оператора ЕСЛИ отличается тем, что для сравнения двух столбцов используется только необходимая для сравнения часть, а не весь массив целиком. Ниже описаны шаги по реализации данного метода:

Разместите оба столбца для сравнения в колонках A и B рабочего листа.

87-1-сравнение двух массивов

В ячейке С2 введите следующую формулу =ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ(A2;$B$2:$B$11;0));»»;A2) и протяните ее до ячейки С11. Данная формула последовательно просматривает наличие каждого элемента из столбца A в столбце B и возвращает значение элемента, если оно было найдено в столбце B.

87-2-сравнение двух столбцов

Использование формулы подстановки ВПР

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

Чтобы сравнить два столбца с данными, находящимися в столбцах A и B(аналогично предыдущему способу), введите следующую формулу =ВПР(A2;$B$2:$B$11;1;0) в ячейку С2 и протяните ее до ячейки С11.

87-3-сравнение двух столбцов

Данная формула просматривает каждый элемент из основного массива в сравниваемом массиве и возвращает его значение, если оно было найдено в столбце B. В противном случае Excelвернет ошибку #Н/Д.

Использование макроса VBA

Использование макросов для сравнения двух столбцов позволяет унифицировать процесс и сократить время на подготовку данных. Решение о том, какой результат сравнения необходимо отобразить, полностью зависит от вашей фантазии и навыков владения макросами. Ниже представлена методика, опубликованная на официальном сайте Микрософт.

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

Sub Find_Matches()
Dim CompareRange As Variant, x As Variant, y As Variant
‘ Установка переменной CompareRangeравной сравниваемому диапазону
Set CompareRange = Range(«B1:B11»)
‘ Если сравниваемый диапазон находится на другом листе или книге,
‘ используйте следующий синтаксис
‘ Set CompareRange = Workbooks(«Книга2»). _
‘   Worksheets(«Лист2»).Range(«B1:B11»)

‘ Сравнение каждого элемента в выделенном диапазоне с каждым элементом
‘ переменной CompareRange
For Each x In Selection
For Each y In CompareRange
If x = y Then x.Offset(0, 2) = x
Next y
Next x
End Sub

В данном коде переменной CompareRange присваивается диапазон со сравниваемым массивом. Затем запускается цикл, который просматривает каждый элемент в выделенном диапазоне и сравнивает его с каждым элементом сравниваемого диапазона. Если были найдены элементы с одинаковыми значениями, макрос заносит значение элемента в столбец С.

Чтобы использовать макрос, вернитесь на рабочий лист, выделите основной диапазон (в нашем случае, это ячейки A1:A11), нажмите сочетание клавиш Alt+F8. В появившемся диалоговом окне выберите макрос Find_Matches и щелкните кнопку выполнить.

87-4-сравнение двух столбцов

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

87-5-сравнение двух столбцов

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

С запуском версии 2013, Excel обзавелась интересной надстройкой под названием Inquire, которая позволяет сравнивать и анализировать два файла Excel. Если вам необходимо сравнить две версии одного и того же файла, например, после создания книги, ваши коллеги внесли кое-какие изменения, и вам нужно определить что именно они изменили, воспользуйтесь инструментом WorkbookCompare надстройки Inquire. Подробнее о том, как устанавливать, запускать и использовать надстройку читайте в моей предыдущей статье про надстройку Inquire.

Итог

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

Функция СОВПАД в Excel предназначена для проверки двух текстовых срок на их полное соответствие друг другу и возвращает одно из двух возможных логических значений: ИСТИНА – если строки полностью совпадают, ЛОЖЬ – если обнаружено хотя бы одно несоответствие в сравниваемых данных. При работе данной функции учитывается регистр букв. Это значит, что результат сравнения двух строк «текст» и «ТеКсТ» будет равен значению ЛОЖЬ. Распространенный вариант применения рассматриваемой функции – определение вхождения некоторого текста в документ.

Сравнение двух таблиц по функции СОВПАД в Excel

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

Вид таблицы данных:

Для сравнения двух строк используем следующую формулу массива (CTRL+SHIFT+Enter):

Описание параметров функции СОВПАД:

  • D3 – текущая ячейка с текстом из второй таблицы;
  • $B$3:$B$13 – соответствующая ячейка с текстом из второй таблицы для проверки на совпадение со значением D3.

Функция ИЛИ возвращает логическое значение ИСТИНА из массива если хотя бы одно из них совпадает с исходным значением.

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

Как видно, в сравниваемых строках были найдены несоответствия.

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

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

Вид таблицы данных:

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

Функция мода определяет наиболее часто повторяющиеся числовые данные в диапазоне цен. Функция ПОИСКПОЗ находит позицию первой ячейки из диапазона, в которой содержится цена самого популярного товара. Полученное значение выступает в качестве первого аргумента функции адрес, возвращающей ссылку на искомую ячейку (к значению прибавлено число 2, поскольку отсчет начинается с третьей строки сверху). Функция ДВССЫЛ возвращает значение, хранящееся в ячейке по ее адресу.

В результате расчетов получим:

Для определения общей прибыли от продаж iPhone 5s используем следующую запись:

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

Результат расчетов формулы:

Всего было куплено 4 модели iPhone 5s по цене 239 у.е., что в целом составило 956 у.е.

Правила синтаксиса и параметры функции СОВПАД в Excel

Функция СОВПАД имеет следующий вариант синтаксической записи:

  • текст1 – обязательный для заполнения, принимает ссылку на ячейку с текстом или текстовую строку для сравнения с данными, принимаемые вторым аргументом.
  • текст2 – обязательный для заполнения, принимает ссылку на ячейку или текст, с которым сравниваются данные, переданные в виде первого аргумента.
  1. Результат выполнения функции СОВПАД, принимающей на вход два имени, является код ошибки #ИМЯ? (например, СОВПАД(имя;имя)). Для корректной работы функции указываемые текстовые данные необходимо помещать в кавычки (например, («имя»;«имя»)).
  2. Функция выполняет промежуточное преобразование числовых данных в текст. Например, результат выполнения =СОВПАД(111;111) будет логическое значение ИСТИНА. Однако, преобразование логических данных в числа текстового формата не выполняется. Например, результат выполнения =СОВПАД(ИСТИНА;1) будет логическое ЛОЖЬ.
  3. Результат сравнения двух пустых ячеек или пустых текстовых строк с использованием функции СОВПАД — логическое ИСТИНА.

Добрый день!

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

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

Рассмотрим несколько вариантов и возможностей для сравнения таблиц в Excel:

Простой способ, как сравнить две таблицы в Excel

Это самые простой и элементарный способ сравнения двух таблиц. Сравнивать таким способом возможно, как числовые значение, так и текстовые. Для примера сравним два диапазона числовых значений, всего на всего прописав в соседней ячейке формулу их равенства =C2=E2, как результат при равенстве ячеек мы получим ответ «ИСТИНА», а если совпадений нет, будет «ЛОЖЬ». Теперь простым авто копированием копируем на весь диапазон нашу формулу позволяющую сравнить два столбика в Excel и видим разницу.

Быстрое выделение значений, которые отличаются

Это также не очень обременительный способ. Если вам просто нужно найти и удостовериться в наличии, ну или отсутствии отличий между таблицами, вам нужно на вкладке «Главная», выбрать кнопку меню «Найти и выделить», предварительно выделив диапазон где надо сравнить две таблицы в Excel. В открывшимся меню выберите пункт «Выделить группу ячеек…» и в появившемся диалоговом окне выберите «отличия по строкам».

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

Очень хороший способ, при котором вы сможете видеть выделенным цветом значение, которые при сличении двух таблиц отличаются. Применить условное форматирование вы можете на вкладке «Главная», нажав кнопку «Условное форматирование» и в предоставленном списке выбираем «Управление правилами». В диалоговом окне «Диспетчер правил условного форматирования», жмем кнопочку «Создать правило» и в новом диалоговом окне «Создание правила форматирования», выбираем правило «Использовать формулу для определения форматируемых ячеек». В поле «Изменить описание правила» вводим формулу =$C2<>$E2 для определения ячейки, которое нужно форматировать, и нажимаем кнопку «Формат». Определяем стиль того, как будет форматироваться наше значение, которое соответствует критерию. Теперь в списке правил появилось наше ново сотворённое правило, вы его выбираете, нажимаете «Ок».

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

Как сравнить две таблицы в Excel с помощью функции СЧЁТЕСЛИ и правил

Все вышеперечисленные способы хороши для упорядоченных таблиц, а вот когда данные, не упорядоченные необходимы иные способы один из которых мы сейчас и рассмотрим. Представим, к примеру, у нас есть 2 таблицы, значения в которых немного отличаются и нам необходимо сравнить эти таблицы для определения значения, которое отличается. Выделяем значение в диапазоне первой таблицы и на вкладке «Главная», пункт меню «Условное форматирование» и в списке жмем пункт «Создать правило…», выбираем правило «Использовать формулу для определения форматируемых ячеек», вписываем формулу =СЧЁТЕСЛИ($C$1:$C$7;C1)=0 и выбираем формат условного форматирования.

Формула проверяет значение из определенной ячейки C1 и сравнивает ее с указанным диапазоном $C$1:$C$7 из второго столбика. Копируем правило на весь диапазон, в котором мы сравниваем таблицы и получаем выделенные цветом ячейки значения, которых не повторяется.

Как сравнить две таблицы в Excel с помощью функции ВПР

В этом варианте мы будем использовать функцию ВПР, которая позволит нам сравнить две таблицы на предмет совпадений. Для сравнения двух столбиков, введите формулу =ВПР(C2;$D$2:$D$7;1;0) и скопируйте ее на весь сравниваемый диапазон. Эта формула последовательно начинает проверять есть ли повторы значения из столбика А в столбике В, ну и соответственно возвращает значение элемента, если оно было там найдено если же значение не найдено получаем ошибку #Н/Д.

Как сравнить две таблицы в Excel функции ЕСЛИ

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

Для примера, сравним два столбика А и В на рабочем листе, в соседней колонке С введем формулу: =ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ(C2;$E$2:$E$7;0));»»;C2) и копируем ее на весь вычисляемый диапазон. Эта формула позволяет просматривать последовательно есть ли определенные элементы из указанного столбика А в столбике В и возвращает значение, в случае если оно было найдено в столбике В.

Сравнить две таблицы с помощью макроса VBA

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

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

Как сравнить два столбца в Excel по строкам

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

Пример 1. Как сравнить два столбца на совпадения и различия в одной строке

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

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

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

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

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

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

Как сравнить несколько столбцов на совпадения в одной строке Excel

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

  • Найти строки с одинаковыми значениями во всех столбцах таблицы;
  • Найти строки с одинаковыми значениями в любых двух столбцах таблицы;

Пример1. Как найти совпадения в одной строке в нескольких столбцах таблицы

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

Если в нашей таблице очень много столбцов, то более просто будет использовать функцию СЧЁТЕСЛИ в сочетании с ЕСЛИ :

В формуле в качестве “5” указано число столбцов таблицы, для которой мы создали формулу. Если в вашей таблице столбцов больше или меньше, то это значение должно быть равно количеству столбцов.

Пример 2. Как найти совпадения в одной строке в любых двух столбцах таблицы

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

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

=ЕСЛИ(СЧЁТЕСЛИ(B2:D2;A2)+СЧЁТЕСЛИ(C2:D2;B2)+(C2=D2)=0; “Уникальная строка”; “Не уникальная строка”)

Первая функция СЧЁТЕСЛИ вычисляет количество столбцов в строке со значением в ячейке А2 , вторая функция СЧЁТЕСЛИ вычисляет количество столбцов в таблице со значением из ячейки B2 . Если результат вычисления равен “0” – это означает, что в каждой ячейке, каждого столбца, этой строки находятся уникальные значения. В этом случае формула выдаст результат “Уникальная строка”, если нет, то “Не уникальная строка”.

Как сравнить два столбца в Excel на совпадения

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

=ЕСЛИ(СЧЁТЕСЛИ($B:$B;$A5)=0; “Нет совпадений в столбце B”; “Есть совпадения в столбце В”)

Эта формула проверяет значения в столбце B на совпадение с данными ячеек в столбце А.

Если ваша таблица состоит из фиксированного числа строк, вы можете указать в формуле четкий диапазон (например, $B2:$B10 ). Это позволит ускорить работу формулы.

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

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

Поиск и выделение совпадений цветом в нескольких столбцах в Эксель

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

  • Выделить столбцы с данными, в которых нужно вычислить совпадения;
  • На вкладке “Главная” на Панели инструментов нажимаем на пункт меню “Условное форматирование” -> “Правила выделения ячеек” -> “Повторяющиеся значения”;
  • Во всплывающем диалоговом окне выберите в левом выпадающем списке пункт “Повторяющиеся”, в правом выпадающем списке выберите каким цветом будут выделены повторяющиеся значения. Нажмите кнопку “ОК”:
  • После этого в выделенной колонке будут подсвечены цветом совпадения:

Поиск и выделение цветом совпадающих строк в Excel

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

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

Рассмотрим как найти совпадающие строки в таблице:

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

Во вспомогательной колонке вы увидите объединенные данные таблицы:

Теперь, для определения совпадающих строк в таблице сделайте следующие шаги:

  • Выделите область с данными во вспомогательной колонке (в нашем примере это диапазон ячеек E2:E15 );
  • На вкладке “Главная” на Панели инструментов нажимаем на пункт меню “Условное форматирование” -> “Правила выделения ячеек” -> “Повторяющиеся значения”;
  • Во всплывающем диалоговом окне выберите в левом выпадающем списке “Повторяющиеся”, в правом выпадающем списке выберите каким цветом будут выделены повторяющиеся значения. Нажмите кнопку “ОК”:
  • После этого в выделенной колонке будут подсвечены дублирующиеся строки:

На примере выше, мы выделили строки в созданной вспомогательной колонке.

Но что, если нам нужно выделить цветом строки не во вспомогательном столбце, а сами строки в таблице с данными?

Для этого сделаем следующее:

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

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

  • Теперь, выделим все данные таблицы (за исключением вспомогательного столбца). В нашем случае это ячейки диапазона A2:D15 ;
  • Затем, на вкладке “Главная” на Панели инструментов нажмем на пункт “Условное форматирование” -> “Создать правило”:

  • В диалоговом окне “Создание правила форматирования” кликните на пункт “Использовать формулу для определения форматируемых ячеек” и в поле “Форматировать значения, для которых следующая формула является истинной” вставьте формулу:

  • Не забудьте задать формат найденных дублированных строк.

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

Совпадение в столбцах Excel

Сегодня расскажу как искать совпадение в столбцах Excel. Разберем все тонкости на примерах.

Задача 1: Есть 6 текстов в 6 ячейках. Необходимо узнать, какие из них уникальные, а какие повторяются.

Совпадение в столбцах Excel

Использовать будем Условное форматирование.

  • Выбираем ячейки, которые необходимо сравнить;
  • Во вкладке Главная переходим «Условное форматирование -> Правила выделения ячеек -> Повторяющиеся значения»;

Совпадение в столбцах Excel

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

Совпадение в столбцах Excel

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

Совпадение в столбцах Excel

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

Совпадение в столбцах Excel

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

Совпадение в столбцах Excel

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

Совпадение в столбцах Excel

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

Как сравнить два списка фамилий в excel на совпадения и выделить цветом

3 рабочих способа сравнить два столбца на совпадения в Excel

Как в эксель сделать выпадающий список

Здравствуйте постоянные читатели и случайные гости моего блога. Меня зовут Федор Лыков, и сегодня мы будем разбираться, как в эксель сравнить два столбца на совпадения. Лучшим инструментом для этого является Office от компании Microsoft.

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

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

Это лишь вершина айсберга в обучении Microsoft Office Excel. Основные знания можно получить, приобретя курс “Excel + Google Таблицы с нуля до PRO”. За 4 месяца не выходя из дома, вы получите возможность делать сложные расчеты за короткое время.

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

Как в Эксель сравнить два столбца на совпадения текста с помощью меню поиска

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

  • Заносим в программу два массива, которые должны быть подвергнуты сравнению.

Как в эксель сравнить два столбца на совпадения

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

Если вы дочитали до данного момента и решили проверить правильность предоставленной мной информации, но программы нет. Что же делать в таком случае, спросите вы меня? А тут все просто. Советую вам прочитать, как установить Эксель на свой компьютер.

  • Теперь нам необходимо выполнить выделение двух столбцов, подвергаемых сравнению.

Как в эксель сравнить два столбца на совпадения

Возможности программ от Microsoft безграничны. К тому же обычно они используются поверхностно. Обычный обыватель пользуется только некоторыми универсальными инструментами.

Предлагаю вам посетить курс MS Office и инструменты Google. Спешите записаться, ведь сейчас действует скидка, которую нельзя упустить.

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

Как в эксель сравнить два столбца на совпадения

  • В итоге вы увидите, как отличия окрасятся другим цветом.

Как в эксель сравнить два столбца на совпадения

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

Как в эксель сравнить два столбца на совпадения

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

Как в эксель сравнить два столбца на совпадения

  • Перед нами откроется новое окно, в котором нужно сделать настройки сортировки.
  • Когда мы все это сделаем, данные будут располагаться в порядке, который нам необходим.

Как в эксель сравнить два столбца на совпадения

  • Когда все настройки сделаны, остается только нажать кнопку «Ок».
  • После этого мы сможем лицезреть на экране следующую картину.

Как в эксель сравнить два столбца на совпадения

Лето лучшее время для того, чтобы привнести в свою жизнь, что-то новое. В период с 4 июня по 3 августа будет проходить обучение по курсу “EXCEL”, который подойдет начинающим пользователям. Переходите по ссылке и забронируйте себе место.

Как в Эксель сравнить два столбца на совпадения с помощью команды форматирование

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

Давайте обозначим каждый шаг подробно:

  • Находим в верхнем меню блок «Стили». В нем будет находиться кнопка «Условное форматирование».
  • Тут нам необходимо найти строку «Создать правило».

Как в эксель сравнить два столбца на совпадения

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

Как в эксель сравнить два столбца на совпадения

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

Сравнение двух столбцов на совпадения в Excel

  • Чтобы форматирование вступило в силу, нам понадобится дважды кликнуть по кнопке «Ок». В результате сравниваемые ячейки будут выделены в соответствии с указанными ограничениями.

Сравнение двух столбцов на совпадения в Excel

Применение функции для сравнения

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

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

Для этого необходимо придерживаться следующей последовательности действий:

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

Сравнение двух столбцов на совпадения в Excel

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

Сравнение двух столбцов на совпадения в Excel

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

Сравнение двух столбцов на совпадения в Excel

Обратите внимание, если появилось #Н/Д, то это будет означать, что в оригинальном массиве такая позиция отсутствует.

Заключение

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

Их можно получить на курсе “Power BI & Excel PRO . Если вы зарегистрируетесь на курс до 10 мая, то получите скидку 30 %. Спешите, остался всего один день.

Это все, что мне хотелось бы вам сегодня рассказать.

Как в Excel сравнить два списка

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

Сравнение двух списков в Excel

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

Как в Excel сравнить два списка

Постановка задачи

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

Как в Excel сравнить два списка

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

Все эти три условия одновременно и являются условиями нашей задачи.

Решение задачи

Как в Excel сравнить два списка

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

Чтобы сравнить два списка, надо выполнить следующие действия:

Как в Excel сравнить два списка

  1. В отдельной колонке создаем список уникальных значений, характерных для обоих списков. Для этого используем формулу: ЕСЛИОШИБКА(ЕСЛИОШИБКА( ИНДЕКС(Список1;ПОИСКПОЗ(0;СЧЁТЕСЛИ($D$4:D4;Список1);0)); ИНДЕКС(Список2;ПОИСКПОЗ(0;СЧЁТЕСЛИ($D$4:D4;Список2);0))); “”). Сама формула должна записываться, как формула массива.
  2. Определим, сколько раз каждое уникальное значение, встречается в массиве данных. Вот, какими формулами можно это сделать: =СЧЁТЕСЛИ(Список1;D5) и =СЧЁТЕСЛИ(Список2;D5).
  3. Если и число повторений, и количество уникальных значений одинаковое во всех перечнях, которые входят в эти диапазоны, то функция возвращает значение 0. Это говорит о том, что совпадение стопроцентное. В этом случае заголовки этих списков обретут зеленый фон.
  4. Если все уникальное содержимое есть в обоих списках, то возвращенное формулами =СЧЁТЕСЛИМН($D$5:$D$34;”*?”;E5:E34;0) и =СЧЁТЕСЛИМН($D$5:$D$34;”*?”;F5:F34;0) значение составит ноль. Если же E1 содержит не ноль, а такое значение содержится в ячейках E2 и F2, то в этом случае диапазоны будут признаны совпадающими, но только частично. В таком случае заголовки соответствующих списков станут оранжевыми.
  5. И в случае возвращения одной из формул, описанных выше, ненулевого значения перечни будут полностью не совпадающими.

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

Тестирование на примере

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

Как в Excel сравнить два списка

Для сравнения данных мы используем диапазон A5:B19, в который мы попеременно вставляем эти пары списков. О том, какой будет итог сравнения, мы поймем по цвету исходных перечней. Если они абсолютно разные, то это будет красный фон. Если часть данных одинаковая, то желтый. В случае же полной идентичности соответствующие заголовки будут зелеными. Как же сделать цвет, зависящий от того, какой результат получился? Для этого нужно условное форматирование.

Поиск отличий в двух списках двумя способами

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

Вариант 1. Синхронные списки

Это простой вариант. Предположим, у нас такие списки.

Как в Excel сравнить два списка

Чтобы определить, какое количество раз значения не сошлись, можно с использованием формулы: =СУММПРОИЗВ(–(A2:A20<>B2:B20)). Если по итогу мы получили 0, это говорит о том, что два перечня одинаковые.

Вариант 2. Перемешанные списки

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

Как в Excel сравнить два списка

Как сравнить 2 столбца по строкам

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

Пример. Как сравнить 2 столбца на совпадения и различия в одной строке

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

Нам следует записать такую формулу, чтобы понять, совпадают ли значения в обеих колонках или нет: =ЕСЛИ(A2=B2; “Совпадают”; “”). Логика работы этой функции очень проста: она сопоставляет значения в ячейках A2 и B2, и если они одинаковые, выводит значение «Совпадают». Если же данные отличаются, то не возвращает никакого значения. Можно также проверить ячейки на предмет отсутствия между ними совпадения. В этом случае используемая формула следующая: =ЕСЛИ(A2<>B2; “Не совпадают”; “”). Принцип тот же самый, сначала осуществляется проверка. Если оказывается, что ячейки удовлетворяют критерию, то выводится значение «Не совпадают».

Также возможно применение следующей формулы в поле формулы, чтобы выводить и «Совпадают» если значения одинаковые, и «Не совпадают», если они отличаются: =ЕСЛИ(A2=B2; “Совпадают”; “Не совпадают”). Также вместо оператора равенства можно использовать оператор неравенства. Только порядок значений, которые будут выводиться в этом случае будет несколько другим: =ЕСЛИ(A2<>B2; “Не совпадают”; “Совпадают”). После использования первого варианта формулы результат получится следующим.

Как в Excel сравнить два списка

Этот вариант формулы не учитывает регистр значений. Поэтому если значения в одной колонке отличаются от других только тем, что они написаны большими буквами, то этой разницы программа не заметит. Чтобы при сравнении учитывался регистр, нужно в критерии использовать функцию СОВПАД. Остальные аргументы оставляем без изменений: =ЕСЛИ(СОВПАД(A2,B2); “Совпадает”; “Уникальное”).

Как сравнить несколько столбцов на совпадения в одной строке

Есть возможность проанализировать значения в перечнях по целому набору критериев:

  1. Найти те ряды, которые везде имеют те же значения.
  2. Найти те ряды, где есть совпадения всего в двух списках.

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

Пример. Как найти совпадения в одной строке в нескольких столбцах таблицы

Предположим, у нас есть ряд колонок, где содержится нужная нам информация. Перед нами стоит задача определить те ряды, в которых значения одинаковые. Чтобы это сделать, нужно воспользоваться следующей формулой: =ЕСЛИ(И(A2=B2;A2=C2); “Совпадают”; ” “).

Как в Excel сравнить два списка

Если столбцов лишком много содержится в таблице, то нужно просто применять вместе с функцией ЕСЛИ оператор СЧЕТЕСЛИ: =ЕСЛИ(СЧЁТЕСЛИ($A2:$C2;$A2)=3;”Совпадают”;” “). Цифра, которая используется в этой формуле, означает количество колонок, в которых нужно осуществлять проверку. Если оно отличается, то нужно написать столько, сколько справедливо для вашей ситуации.

Пример. Как найти совпадения в одной строке в любых 2 столбцах таблицы

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

Как в Excel сравнить два списка

Мы используем такую формулу: =ЕСЛИ(ИЛИ(A2=B2;B2=C2;A2=C2);”Совпадают”;” “). Может случиться ситуация, когда столбцов в таблице очень много. В таком случае формула будет огромной, а времени на подбор всех необходимых комбинаций может потребоваться очень много. Чтобы решить эту проблему, нужно воспользоваться функцией СЧЕТЕСЛИ: =ЕСЛИ(СЧЁТЕСЛИ(B2:D2;A2)+СЧЁТЕСЛИ(C2:D2;B2)+(C2=D2)=0; “Уникальная строка”; “Не уникальная строка”)

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

Как в Excel сравнить два списка

Как сравнить 2 столбца в Excel на совпадения

Теперь приведем такой пример. Допустим у нас есть таблица с двумя столбцами. Необходимо проверить совпадения в них. Чтобы это сделать, необходимо применять формулу, где будут использоваться и функция ЕСЛИ, и оператор СЧЕТЕСЛИ: =ЕСЛИ(СЧЁТЕСЛИ($B:$B;$A5)=0; “Нет совпадений в столбце B”; “Есть совпадения в столбце В”)

Как в Excel сравнить два списка

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

Как сравнить 2 столбца в Excel на совпадения и выделить цветом

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

Поиск и выделение совпадений цветом в нескольких столбцах

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

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

Как в Excel сравнить два списка

Поиск и выделение цветом совпадающих строк

Методика проверки, совпадают ли строки, несколько отличается. Сначала необходимо создать дополнительную колонку, и там будем использовать объединенные значения с использованием оператора &. Для этого нужно записать формулу вида: =A2&B2&C2&D2.

Как в Excel сравнить два списка

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

Как в Excel сравнить два списка

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

Содержание

  1. Что возвращает функция
  2. Формула ЕСЛИ в Excel – примеры нескольких условий
  3. Синтаксис функции ЕСЛИ
  4. Расширение функционала с помощью операторов «И» и «ИЛИ»
  5. Простейший пример применения.
  6. Применение «ЕСЛИ» с несколькими условиями
  7. Операторы сравнения чисел и строк
  8. Одновременное выполнение двух условий
  9. Общее определение и задачи
  10. Как правильно записать?
  11.  
  12. Дополнительная информация
  13. Вложенные условия с математическими выражениями.
  14. Аргументы функции
  15. А если один из параметров не заполнен?
  16. Функция ЕПУСТО
  17. Функции ИСТИНА и ЛОЖЬ
  18. Составное условие
  19. Простое условие
  20. Пример функции с несколькими условиями
  21. Пример использования «ЕСЛИ»
  22. Проверяем простое числовое условие с помощью функции IF (ЕСЛИ)
  23. Заключение

Что возвращает функция

Заданное вами значение при выполнении двух условий ИСТИНА или ЛОЖЬ.

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

Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.

Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются. Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2<1, то условия B2<0,9 и B2<0,95 Excel бы просто «не заметил», т.к. они входят в интервал B2<1 который проверился бы первым (если значение менее 0,9, само собой, оно также меньше и 1). И тогда у нас получилось бы только два возможных варианта: менее 1 и альтернативное, т.е. 1 и более.

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

В конце нужно обязательно закрыть все скобки, иначе эксель выдаст ошибку

Синтаксис функции ЕСЛИ

Вот как выглядит синтаксис этой функции и её аргументы:

=ЕСЛИ(логическое выражение, значение если «да», значение если «нет»)

Логическое выражение – (обязательное) условие, которое возвращает значение «истина» или «ложь» («да» или «нет»);

Значение если «да» – (обязательное) действие, которое выполняется в случае положительного ответа;

Значение если «нет» – (обязательное) действие, которое выполняется в случае отрицательного ответа;

Давайте вместе подробнее рассмотрим эти аргументы.

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

Как правильно задать вопрос? Для этого можно составить логическое выражение, используя знаки “=”, “>”, “<”, “>=”, “<=”, “<>”.

Расширение функционала с помощью операторов «И» и «ИЛИ»

Когда нужно проверить несколько истинных условий, используется функция И. Суть такова: ЕСЛИ а = 1 И а = 2 ТОГДА значение в ИНАЧЕ значение с.

Функция ИЛИ проверяет условие 1 или условие 2. Как только хотя бы одно условие истинно, то результат будет истинным. Суть такова: ЕСЛИ а = 1 ИЛИ а = 2 ТОГДА значение в ИНАЧЕ значение с.

Функции И и ИЛИ могут проверить до 30 условий.

Пример использования оператора И:

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

Простейший пример применения.

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

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

В этом нам поможет функция ЕСЛИ. Добавим в таблицу данных столбец “Страна”. Регион “Запад” – это местные продажи («Местные»), а остальные регионы – это продажи за рубеж («Экспорт»).

Применение «ЕСЛИ» с несколькими условиями

Мы только что рассмотрели пример использования оператора «ЕСЛИ» с одним логическим выражением. Но в программе также имеется возможность задавать больше одного условия. При этом сначала будет проводиться проверка по первому, и в случае его успешного выполнения сразу отобразится заданное значение. И только если не будет выполнено первое логическое выражение, в силу вступит проверка по второму.

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

Первое условия – это проверка пола. Если “мужской” – сразу выводится значение 0. Если же это “женский”, то начинается проверка по второму условию. Если вид спорта бег – 20%, если теннис – 10%.

Пропишем формулу для этих условий в нужной нам ячейке.

=ЕСЛИ(B2=”мужской”;0; ЕСЛИ(C2=”бег”;20%;10%))

Щелкаем Enter и получаем результат согласно заданным условиям.

Далее растягиваем формулу на все оставшиеся строки таблицы.

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

Операторы сравнения чисел и строк представлены операторами, состоящими из одного или двух математических знаков равенства и неравенства:

  • < – меньше;
  • <= – меньше или равно;
  • > – больше;
  • >= – больше или равно;
  • = – равно;
  • <> – не равно.

Синтаксис:

Результат = Выражение1 Оператор Выражение2

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

Если переменная Результат будет объявлена как Boolean (или Variant), она будет возвращать значения False и True. Числовые переменные других типов будут возвращать значения 0 (False) и -1 (True).

Операторы сравнения чисел и строк работают с двумя числами или двумя строками. При сравнении числа со строкой или строки с числом, VBA Excel сгенерирует ошибку Type Mismatch (несоответствие типов данных):

Sub Primer1()

On Error GoTo Instr

Dim myRes As Boolean

‘Сравниваем строку с числом

myRes = “пять” > 3

Instr:

If Err.Description <> “” Then

MsgBox “Произошла ошибка: “ & Err.Description

End If

End Sub

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

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

myRes = “семь” > “восемь” ‘myRes = True

myRes = “Семь” > “восемь” ‘myRes = False

myRes = Len(“семь”) > Len(“восемь”) ‘myRes = False

Одновременное выполнение двух условий

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

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

Для этого используем следующую формулу:

=ЕСЛИ(И(B2=”женский”;С2=”бег”);30%;0)

Нажимаем клавишу Enter, чтобы отобразить результат в ячейке.

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

Общее определение и задачи

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

Синтаксис этой функции выглядит следующим образом: «ЕСЛИ(логическое выражение; [функция если истина]; [функция если ложь])».

Как правильно записать?

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

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

В качестве первого аргумента записываем: С2=”Запад”. Как и в других функциях Excel, адрес ячейки можно не вводить вручную, а просто кликнуть на ней мышкой. Затем ставим “,” и указываем второй аргумент.

Второй аргумент – это значение, которое примет ячейка G2, если записанное нами условие будет выполнено. Это будет слово “Местные”.

После этого снова через запятую указываем значение третьего аргумента. Это значение примет ячейка G2, если условие не будет выполнено: “Экспорт”. Не забываем закончить ввод формулы, закрыв скобку и затем нажав “Enter”.

Наша функция выглядит следующим образом:

=ЕСЛИ(C2=”Запад”,”Местные”,”Экспорт”)

Наша ячейка G2 приняла значение «Местные».

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

Дополнительная информация

  • В функции IF (ЕСЛИ) может быть протестировано 64 условий за один раз;
  • Если какой-либо из аргументов функции является массивом – оценивается каждый элемент массива;
  • Если вы не укажете условие аргумента FALSE (ЛОЖЬ) value_if_false (значение_если_ложь) в функции, т.е. после аргумента value_if_true (значение_если_истина) есть только запятая (точка с запятой), функция вернет значение “0”, если результат вычисления функции будет равен FALSE (ЛОЖЬ).
    На примере ниже, формула =IF(A1> 20,”Разрешить”) или =ЕСЛИ(A1>20;”Разрешить”) , где value_if_false (значение_если_ложь) не указано, однако аргумент value_if_true (значение_если_истина) по-прежнему следует через запятую. Функция вернет “0” всякий раз, когда проверяемое условие не будет соответствовать условиям TRUE (ИСТИНА).

    |
  • Если вы не укажете условие аргумента TRUE(ИСТИНА) (value_if_true (значение_если_истина)) в функции, т.е. условие указано только для аргумента value_if_false (значение_если_ложь), то формула вернет значение “0”, если результат вычисления функции будет равен TRUE (ИСТИНА);
    На примере ниже формула равна =IF (A1>20;«Отказать») или =ЕСЛИ(A1>20;”Отказать”), где аргумент value_if_true (значение_если_истина) не указан, формула будет возвращать “0” всякий раз, когда условие соответствует TRUE (ИСТИНА).

Вложенные условия с математическими выражениями.

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

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

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

=B8*ЕСЛИ(B8>=101; 12; ЕСЛИ(B8>=50; 14; ЕСЛИ(B8>=20; 16; ЕСЛИ( B8>=11; 18; ЕСЛИ(B8>=1; 22; “”)))))

И вот результат:

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

Например, вместо «жесткого кодирования» цен в самой формуле можно ссылаться на ячейки, в которых они указаны (ячейки с B2 по B6). Это позволит редактировать исходные данные без необходимости обновления самой формулы:

=B8*ЕСЛИ(B8>=101; B6; ЕСЛИ(B8>=50; B5; ЕСЛИ(B8>=20; B4; ЕСЛИ( B8>=11; B3; ЕСЛИ(B8>=1; B2; “”)))))

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

  • logical_test (лог_выражение) – это условие, которое вы хотите протестировать. Этот аргумент функции должен быть логичным и определяемым как ЛОЖЬ или ИСТИНА. Аргументом может быть как статичное значение, так и результат функции, вычисления;
  • [value_if_true] ([значение_если_истина]) – (не обязательно) – это то значение, которое возвращает функция. Оно будет отображено в случае, если значение которое вы тестируете соответствует условию ИСТИНА;
  • [value_if_false] ([значение_если_ложь]) – (не обязательно) – это то значение, которое возвращает функция. Оно будет отображено в случае, если условие, которое вы тестируете соответствует условию ЛОЖЬ.

А если один из параметров не заполнен?

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

=ЕСЛИ(E2>100,F2*0.1)

Что будет в результате?

Насколько это красиво и удобно – судить вам. Думаю, лучше все же использовать оба аргумента.

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

=ЕСЛИ(E2>100,F2*0.1,””)

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

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

Более того, если вам действительно нужно только проверить какое-то условие и получить «Истина» или «Ложь» («Да» или «Нет»), то вы можете использовать следующую конструкцию –

=ЕСЛИ(E2>100,ИСТИНА,ЛОЖЬ)

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

Функция ЕПУСТО

Если нужно определить, является ли ячейка пустой, можно использовать функцию ЕПУСТО (ISBLANK), которая имеет следующий синтаксис:

=ЕПУСТО(значение)

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

Функции ИСТИНА и ЛОЖЬ

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

=ИСТИНА()
=ЛОЖЬ()

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

=ЕСЛИ(А1=ИСТИНА();”Проходите”;”Стоп”)

В противном случае формула возвратит “Стоп”.

Составное условие

Составное условие состоит из простых, связанных логическими операциями И() и ИЛИ().

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

Простое условие

Что же делает функция ЕСЛИ()? Посмотрите на схему. Здесь приведен простой пример работы функции при определении знака числа а.

Блок-схема “Простое условие”. Определение отрицательных и неотрицательных чисел

Условие а>=0 определяет два возможных варианта: неотрицательное число (ноль или положительное) и отрицательное. Ниже схемы приведена запись формулы в Excel. После условия через точку с запятой перечисляются варианты действий. В случае истинности условия, в ячейке отобразится текст “неотрицательное”, иначе – “отрицательное”. То есть запись, соответствующая ветви схемы «Да», а следом – «Нет».

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

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

Блок-схема “Простое условие”. Расчет данных

На схеме видно, что при выполнении условия число увеличивается на десять, и в формуле Excel записывается расчетное выражение А1+10 (выделено зеленым цветом). В противном случае число не меняется, и здесь расчетное выражение состоит только из обозначения самого числа А1 (выделено красным цветом).

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

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

Решение:

Решение данной задачи видно на рисунке ниже. Но внесем все-таки ясность в эту иллюстрацию. Основные исходные данные для решения этой задачи находятся в столбцах А и В. В ячейке А5 указано пограничное значение дохода при котором изменяется ставка налогообложения. Соответствующие ставки указаны в ячейках В5 и В6. Доход фирм указан в диапазоне ячеек В9:В14. Формула расчета налога записывается в ячейку С9: =ЕСЛИ(B9>A$5;B9*B$6;B9*B$5). Эту формулу нужно скопировать в нижние ячейки (выделено желтым цветом).

В расчетной формуле адреса ячеек записаны в виде A$5, B$6, B$5. Знак доллара делает фиксированной часть адреса, перед которой он установлен, при копировании формулы. Здесь установлен запрет на изменение номера строки в адресе ячейки.

Пример функции с несколькими условиями

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

  1. Для примера возьмем все ту же таблицу с выплатами премии к 8 марта. Но на этот раз, согласно условиям, размер премии зависит от категории работника. Женщины, имеющие статус основного персонала, получают бонус по 1000 рублей, а вспомогательный персонал получает только 500 рублей. Естественно, что мужчинам этот вид выплат вообще не положен независимо от категории.
  2. Первым условием является то, что если сотрудник — мужчина, то величина получаемой премии равна нулю. Если же данное значение ложно, и сотрудник не мужчина (т.е. женщина), то начинается проверка второго условия. Если женщина относится к основному персоналу, в ячейку будет выводиться значение «1000», а в обратном случае – «500». В виде формулы это будет выглядеть следующим образом: «=ЕСЛИ(B6="муж.";"0"; ЕСЛИ(C6="Основной персонал"; "1000";"500"))».
  3. Вставляем это выражение в самую верхнюю ячейку столбца «Премия к 8 марта».
  4. Как и в прошлый раз, «протягиваем» формулу вниз.

Пример использования «ЕСЛИ»

Теперь давайте рассмотрим конкретные примеры, где используется формула с оператором «ЕСЛИ».

  1. Имеем таблицу заработной платы. Всем женщинам положена премия к 8 марту в 1000 рублей. В таблице есть колонка, где указан пол сотрудников. Таким образом, нам нужно вычислить женщин из предоставленного списка и в соответствующих строках колонки «Премия к 8 марта» вписать по «1000». В то же время, если пол не будет соответствовать женскому, значение таких строк должно соответствовать «0». Функция примет такой вид: «ЕСЛИ(B6="жен."; "1000"; "0")». То есть когда результатом проверки будет «истина» (если окажется, что строку данных занимает женщина с параметром «жен.»), то выполнится первое условие — «1000», а если «ложь» (любое другое значение, кроме «жен.»), то соответственно, последнее — «0».
  2. Вписываем это выражение в самую верхнюю ячейку, где должен выводиться результат. Перед выражением ставим знак «=».
  3. После этого нажимаем на клавишу Enter. Теперь, чтобы данная формула появилась и в нижних ячейках, просто наводим указатель в правый нижний угол заполненной ячейки, жмем на левую кнопку мышки и, не отпуская, проводим курсором до самого низа таблицы.
  4. Так мы получили таблицу со столбцом, заполненным при помощи функции «ЕСЛИ».

Проверяем простое числовое условие с помощью функции IF (ЕСЛИ)

При использовании функции IF (ЕСЛИ) в Excel, вы можете использовать различные операторы для проверки состояния. Вот список операторов, которые вы можете использовать:

Если сумма баллов больше или равна “35”, то формула возвращает “Сдал”, иначе возвращается “Не сдал”.

Заключение

Одним из самых популярных и полезных инструментов в Excel является функция ЕСЛИ, которая проверяет данные на совпадение заданным нами условиям и выдает результат в автоматическом режиме, что исключает возможность ошибок из-за человеческого фактора. Поэтому, знание и умение применять этот инструмент позволит сэкономить время не только на выполнение многих задач, но и на поиски возможных ошибок из-за “ручного” режима работы.

Источники

  • https://excelhack.ru/funkciya-if-esli-v-excel/
  • https://statanaliz.info/excel/funktsii-i-formuly/neskolko-uslovij-funktsii-esli-eslimn-excel/
  • https://mister-office.ru/funktsii-excel/function-if-excel-primery.html
  • https://exceltable.com/funkcii-excel/funkciya-esli-v-excel
  • https://MicroExcel.ru/operator-esli/
  • https://vremya-ne-zhdet.ru/vba-excel/operatory-sravneniya/
  • https://lumpics.ru/the-function-if-in-excel/
  • http://on-line-teaching.com/excel/lsn024.html
  • https://tvojkomp.ru/primery-usloviy-v-excel/

#Руководства

  • 24 июн 2022

  • 0

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

Иллюстрация: Meery Mary для Skillbox Media

Ксеня Шестак

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

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

В статье разберёмся:

  • как работает и для чего нужна функция ЕСЛИ в Excel;
  • как запустить функцию ЕСЛИ с одним условием;
  • как запустить функцию с несколькими условиями.

Функцию ЕСЛИ используют, когда нужно сравнить данные таблицы с критериями пользователя. У функции есть два результата: ИСТИНА и ЛОЖЬ. Первый результат функция выдаёт, когда данные ячейки полностью совпадают с заданным условием, второй — когда данные ячейки условию не соответствуют.

Например, если нужно определить в таблице значения меньше 500, то значение 265 будет отмечено функцией как истинное, а значение 3426 — как ложное.

Можно задавать несколько условий одновременно. Например, найти значения меньше 500, но больше 300. В этом случае функция определит значение 265 как ложное, а 402 — как истинное. Так можно проверять не только числовые значения, но и текст.

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

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

Представим, что в автосалон обратился покупатель с просьбой подобрать ему автомобиль. Его запрос — автомобили чёрного или красного цвета, с объёмом двигателя больше 1,5 л, стоимостью до 2,5 млн рублей. Есть каталог автомобилей, но все характеристики и цены расположены в нём вразброс.

Так выглядит каталог автомобилей
Скриншот: Excel / Skillbox Media

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


Готовимся к запуску функции ЕСЛИ

Для начала рассмотрим, как функция ЕСЛИ работает в классическом виде — для проверки одного условия пользователя. Определим автомобили стоимостью до 2,5 млн рублей.

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

Функция ЕСЛИ приносит результаты в отдельную ячейку, поэтому создадим отдельный столбец для них. Лучше сразу назвать его так, чтобы было понятно, о чём речь. В нашем случае сделаем столбец «До 2,5 млн руб.».

Создаём столбец, в который функция ЕСЛИ принесёт результат
Скриншот: Excel / Skillbox Media

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

1. Перейти во вкладку «Формулы» и нажать «Вставить функцию».

Нажимаем сюда, чтобы вызвать окно для поиска функций
Скриншот: Excel / Skillbox Media

2. Нажать на «fx» в строке ссылок на любой вкладке Excel.

Так окно поиска функции можно открыть с любой вкладки Excel
Скриншот: Excel / Skillbox Media

На экране справа появится окно «Построитель формул». В нём через поиск находим функцию ЕСЛИ и нажимаем «Вставить функцию».

Нажимаем сюда, чтобы открылось окно для построения функции ЕСЛИ
Скриншот: Excel / Skillbox Media

Появляется окно для заполнения аргументов функции: «Лог_выражение», «Значение_если_истина», «Значение_если_ложь». Ниже разберёмся, как их заполнить.

Появилось окно для ввода аргументов функции
Скриншот: Excel / Skillbox Media

Функция ЕСЛИ предполагает, что пользователь создаёт запрос и указывает два варианта ответа на него. Этот запрос и варианты ответа — и есть три аргумента функции.

«Лог_выражение» (логическое выражение) — запрос пользователя, который функция будет проверять. В нашем примере это стоимость автомобилей.

Нужно, чтобы функция определила автомобили стоимостью менее или равной 2 500 000 рублей. Порядок действий следующий:

1. Ставим курсор в окно «Лог_выражение» в построителе формул.

2. Выбираем первое значение столбца «Цена, руб.» — ячейку Е2. Обозначение ячейки переносится в окно «Лог_выражение» построителя формул и одновременно с этим появляется в строке ссылок.

Выделяем первую ячейку столбца, в котором нужно проверить условие пользователя
Скриншот: Excel / Skillbox Media

3. Дополняем значение E2 запросом пользователя: <=2500000. Одновременно с этим формула в строке ссылок принимает вид:fx=ЕСЛИ(E2<=2500000).

Так выглядит первый аргумент функции после заполнения
Скриншот: Excel / Skillbox Media

«Значение_если_истина» — результат, который функция принесёт в ячейку, если значение совпадёт с запросом пользователя. В случае с примером — что напишет функция, если проверяемая стоимость авто будет меньше либо равна 2 500 000 рублей.

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

Заполняем значение ИСТИНА
Скриншот: Excel / Skillbox Media

«Значение_если_ложь» — результат, который функция принесёт в ячейку, если значение не совпадёт с запросом пользователя. В нашем примере — что напишет функция, если проверяемая стоимость авто будет больше 2 500 000 рублей.

Введём в качестве аргумента ЛОЖЬ значение «Не подходит».

Итоговая формула в строке ссылок примет вид:
fx=ЕСЛИ(E2<=2500000;»Подходит»;»Не подходит»).

Вводим значение третьего аргумента
Скриншот: Excel / Skillbox Media

Чтобы получить результат функции, нажимаем кнопку «Готово» в построителе формул.

Нажмём «Готово» для получения результата
Скриншот: Excel / Skillbox Media

В выбранной ячейке появится результат работы функции: «Подходит». Это значит, что первый автомобиль каталога подходит под запрос пользователя, — его цена 1 910 000 рублей.

Так выглядит результат работы функции ЕСЛИ
Скриншот: Excel / Skillbox Media

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

Так выглядит результат работы функции для всех остальных строк таблицы
Скриншот: Excel / Skillbox Media

Чтобы настроить функцию ЕСЛИ с несколькими условиями, нужно добавить к ней дополнительные операторы Excel — «И», «ИЛИ».

Они связывают несколько критериев и, в зависимости от того, совпадают они с данными таблицы или нет, выдают результат. Схематично это будет выглядеть так: «ЕСЛИ условие a = 1, И/ИЛИ условие b = 2, И/ИЛИ условие c = 3, то — ИСТИНА, иначе — ЛОЖЬ».

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

Создадим ещё один столбец для новых результатов работы функции. Назовём его в соответствии с запросом покупателя: «До 2,5 млн руб., чёрный или красный, больше 1,5 л».

Создадим столбец для результата работы функции с тремя условиями пользователя
Скриншот: Excel / Skillbox Media

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

Отличия от классического варианта использования функции ЕСЛИ будут при заполнении первого аргумента «Лог_выражение»:

  • Ставим курсор в окно «Лог_выражение» в построителе формул, вводим дополнительный аргумент «И» и открываем скобку.
  • Первым условием будем вводить два цвета автомобилей, которые выбрал покупатель, поэтому вводим второй дополнительный аргумент «ИЛИ» и открываем ещё одну скобку.
  • Выбираем первое значение столбца «Цвет» — ячейку B2. Ставим знак равенства и находим в этом же столбце значение из запроса пользователя: «чёрный» — ячейку B5. Ставим знак точки с запятой.
  • Снова выбираем первое значение столбца «Цвет», ставим знак равенства и находим второй цвет из запроса пользователя: «красный» — ячейку B8. Закрываем скобку и ставим знак точки с запятой.
  • Закрепляем выбранные ячейки с цветами. На Windows для этого поочерёдно выбираем значения ячеек в строке ссылок и нажимаем клавишу F4, на macOS — выбираем значения ячеек в строке ссылок и нажимаем клавиши Cmd + T. Закрепить эти ячейки нужно, чтобы в дальнейшем можно было протянуть формулу вниз и она сработала корректно для всех остальных строк.
  • Выбираем первое значение столбца «Объём двигателя, л» — ячейку D2. Дополняем его запросом пользователя: >1,5. Также ставим знак точки с запятой.
  • Выбираем первое значение столбца «Цена, руб.» — ячейку Е2. Дополняем его запросом пользователя: <=2500000, как делали в первом примере. Закрываем скобку.

Формула в строке ссылок принимает вид:
fx=ЕСЛИ(И(ИЛИ(B2=$B$5;B2=$B$8);D2>1,5;E2<=2500000)). Она объединит три запроса покупателя оператором «И», а в первом запросе предоставит возможность выбора с помощью оператора «ИЛИ».

Так выглядит первый аргумент функции ЕСЛИ с несколькими истинными условиями после заполнения
Скриншот: Excel / Skillbox Media

Аргументы «Значение_если_истина» и «Значение_если_ложь» оставляем такими же, как в первом случае: «Подходит» и «Не подходит».

Итоговая формула в строке ссылок принимает вид:
fx=ЕСЛИ(И(ИЛИ(B2=$B$5;B2=$B$8);D2>1,5;E2<=2500000);Подходит»;»Не подходит»). Нажимаем кнопку «Готово».

В выбранной ячейке появляется результат: «Не подходит». Это значит, что первый автомобиль каталога не подходит под запрос покупателя — у него жёлтый цвет, а объём двигателя равен 1,5 л.

Так выглядит результат работы функции ЕСЛИ с несколькими истинными условиями
Скриншот: Excel / Skillbox Media

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

Так выглядит результат работы функции ЕСЛИ с несколькими истинными условиями для всех остальных автомобилей
Скриншот: Excel / Skillbox Media

Как пользоваться функцией ЕСЛИ в «Google Таблицах»? В них тоже есть функция ЕСЛИ, но нет окна построителя формул. Поэтому нужно прописывать её вручную, добавляя все пробелы и кавычки самостоятельно. Готовая формула будет выглядеть так:
fx=ЕСЛИ(E2<=»2500000″;»Подходит»;»Не подходит»).

  • Руководство: как сделать ВПР в Excel и перенести данные из одной таблицы в другую
  • Инструкция: как закреплять строки и столбцы в Excel
  • Руководство по созданию выпадающих списков в Excel — как упростить заполнение таблицы повторяющимися данными
  • Гайд о теории ТРИЗ, которую изучают менеджеры по всему миру
  • Статья с советами эксперта, как сохранить бизнес в условиях кризиса, — о рынке, рисках, зарплатах и возможностях

Научитесь: Excel + Google Таблицы с нуля до PRO
Узнать больше

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Функция если в excel сравнение двух таблиц
  • Функция если в excel сложный пример
  • Функция если в excel скидки
  • Функция если в excel с формулами скачать
  • Функция если в excel с формулами в значении

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии