Подсчёт значений

Автор dimka62rus, 9 ноября 2022, 15:37

0 Пользователи и 1 гость просматривают эту тему.

dimka62rus

Здравствуйте, подскажите пожалуйста формулу, суть: есть некий номер в столбце B7 листа1 и B7:B50000 листа2, необходимо в листе 3 сделать вывод номеров, которые не повторяются в B7:B50000 листа 2, относительно B7 листа 1
Данная формула наоборот выводит совпадения в этих 2ух листах -
=ВПР($Лист1.B7;$Лист2.$B$7:$B$50000;1;0)
А нужно наоборот выводить номера, которые не повторяются в листе2 B7:B50000

bigor

Здравствуйте.
Приложите файл пример. А то я не знаю где искать столбец B7? И напишите какой у вас офис
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

dimka62rus

Версия 6.0.6.1

dimka62rus

Приложил, посмотрите пожалуйста

bigor

Я правильно понял задание:вывести на лист 3, все значения столбца B листа 2, которые не равны значению Лист1.B7 ?
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

dimka62rus

Да. Нужно сопоставить B7-50000 листа 1 со значениями B7-50000 листа 2. И вывести в лист 3 только не повторяющиеся номера

bigor

Массивная формула уже больше 20 минут пытается это сделать на моем компе :( Проще наверное собрать все в один столбец и удалить дубли.
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

dimka62rus

А можно формулу поглядеть?

dimka62rus


bigor

Формула примерно такая =INDEX(Лист2.$B$7:$B$5525;SMALL(IF(COUNTIF(Лист1.$B$7:$B$5525;Лист2.$B$7:$B$5525);"";ROW($A$7:$A$5525)-6);ROW(A1))) массивная и затем скопировать ее вниз строк на 500.

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

bigor

Цитата: Bigor от  9 ноября 2022, 17:53массивная и затем скопировать ее вниз строк на 500
если у вас действительно 50 тыс. строк, то копировать нужно намного больше строк вниз. И скорее всего нужно искать другое решение, чем массивная формула
 
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

dimka62rus

Почему-то формула не работает

rami

Цитата: dimka62rus от  9 ноября 2022, 18:14Почему-то формула не работает
Замените английские имена функций на русские.
=ИНДЕКС(Лист2.$B$7:$B$5525;НАИМЕНЬШИЙ(ЕСЛИ(СЧЁТЕСЛИ(Лист1.$B$7:$B$5525;Лист2.$B$7:$B$5525);"";СТРОКА($A$7:$A$5525)-6);СТРОКА(A1)))

dimka62rus

Всё равно выводит повторяющиеся номера в листе 1 и 2 , а нужно чтобы наоборот  выводил номера, которые не повторчются

bigor

Давай еще раз определимся с условиями. Нужно вывести те значения со 2 листа, которых нет на 1 листе. Если да, то все должно работать, формула массивная вводится тремя кнопками Ctrl+Shift+Enter Формула "тормозная" я с 5000 значений не дождался завершения расчета на 600 строках.
Можно воспользоваться полуручным вариантом :) На листе 2 в ячейку С7 вводим  =COUNTIF(Лист1.$B$7:$B$5902;B7) для русских формул =СЧЁТЕСЛИ(Лист1.$B$7:$B$5902;B7) и тянем/копируем ее вниз насколько нужно (если бы не было пропусков в столбце B, то можно просто щелкнуть 2 раза на нижний правый угол ячейки C7) затем фильтруем/сортируем по столбцу С (C:C=0) и копируем нужные ячейки на лист 3. C 5000 строк это заняло у меня минуты 3-4.
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут