2

Что я хочу сделать

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

пример

ColA - ColB - ColC    
1 - 1 - 4
3 - 2 - 8
10 - 3 - 10
4 - 5 - "" 
5 - 7 - ""    
8 - 6 - ""
9 - 9 - ""

Что я попробовал еще

До сих пор мне удавалось получить следующий результат. Я делаю это с помощью следующей формулы в столбце C:

=IF(IFERROR(MATCH(A2;B$2:F$300;0);"")<>"";"";A2) 

Результат:

ColA - ColB - ColC
1 - 1 - ""
3 - 2 - ""
10 - 3 - 10
4 - 5 - 4     
5 - 7 - "" 
8 - 6 - 8
9 - 9 - ""

Но я хочу избежать пустых ячеек в полковнике С.

Я попробовал формулу, которую нашел в одном из ответов на этом сайте:

IFERROR(INDEX($A$2:$A$1999,MATCH(0,IFERROR(MATCH($A$2:$A$1999,$B$2:$B$399,0),COUNTIF($C$1:$C1,$A$2:$A$1999)),0)),"")

... но это не работает. Может быть, я неправильно адаптирую эту формулу ...?

1 ответ1

1

Вам придется использовать формулу массива. Предполагая, что ваши данные в ColA и ColB находятся в строках с 1 по 10, выберите строки с 1 по 10 в ColC, а затем введите следующую формулу в строке формул:

=IFERROR(SMALL(IF(ISNA(MATCH(A1:A10,B1:B10,0)),A1:A10,""),ROW()),"")

Сохраните его как формулу массива, нажав клавиши Ctrl+Shift+Enter (в Windows) / Cmd+Shift+Enter (в OS X) - если вы все сделали правильно, формула будет отображаться в скобках ({}) и выглядеть одинаково в все клетки. Применительно к данным вашего примера, это то, что вы получаете:

снимок экрана формулы, использованной в размещенном примере

Обратите внимание, что при работе с формулами массива есть несколько ошибок (их можно редактировать только путем редактирования всего диапазона, их нельзя сжать, их можно развернуть только путем ручного редактирования формулы… подробнее см. Статью, на которую я ссылался, раздел «Правила»). для ввода и изменения формул массива »).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .