Сравнение листов в Excel, где содержимое в основном текстовое

Сравнение листов в Excel, где содержимое в основном текстовое

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

решение1

Вероятно, есть и другие способы сделать это, но вот вариант. Вы можете использовать функцию СЧЁТЕСЛИМН. Однако это позволит вам искать только по 3 критериям.

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

Вот скриншот того, что я собрал:введите описание изображения здесь

В вашем главном списке создайте новый столбец с заголовком «Скопировано» (или как хотите). В ячейку F2 я ввел следующую формулу:

=IF(COUNTIFS('Duplicates removed'!A:A, A2, 'Duplicates removed'!B:B, B2, 'Duplicates removed'!C:C, C2)>=1, "Duplicate", "")

Функция COUNTIFS сопоставляет ваши критерии по диапазону. В этом случае первым критерием является "Site" или A2 в главном списке. Он ищет совпадения в Sheet "'Duplicates removed'!A:A", который является соответствующим столбцом сайтов на листе, где были удалены дубликаты. B2 соответствует Type, а C2 соответствует "Rec". >=1 сообщает COUNTIFS, что вы хотите найти записи, которые больше или равны 1 (на вашем сокращенном листе может быть несколько записей). "Duplicate" возвращает то, что будет отображаться в ячейке, если будет найдено совпадение. Измените это по своему усмотрению. "Copied" "Done" и т. д.

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

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

Выберите ячейку A2. Затем перейдите в условное форматирование, нажмите «новое правило», затем выберите «Использовать формулу для определения ячеек для форматирования». В «Поле форматирования значений» введите =$F2="Duplicateи замените ячейку и фразу на то, что соответствует вашим потребностям. Затем нажмите «Формат» и выберите затенение ячейки. введите описание изображения здесь

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

введите описание изображения здесь

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

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

*Примечание. Исходя из того, что вы делаете, база данных будет эффективнее Excel. База данных присвоит уникальный идентификационный номер каждой записи, что значительно упростит поиск и управление дубликатами. Я управляю базой данных из примерно 12 000 (и их число растет) записей. У меня есть столбец в таблице, куда я могу вводить «дублирующие» идентификационные номера. Если запись точно совпадает с предыдущей записью, я ввожу предыдущий идентификационный номер в поле дубликата. Это позволяет легко найти, какие заявки являются повторяющимися проблемами, просто выполняя запрос для сопоставления исходного номера идеи с дубликатом поля.

Связанный контент