2016-03-07 2 views
0

Если два домохозяйства делятся, они создают галстук, и этот галстук имеет ранг родства, который не меняется, независимо от того, как часто два домохозяйства делятся друг с другом.EXCEL - Сравнение двух колонок - Удаление повторов

родство RANK Пример

Как вы можете видеть, это не имеет значения, в котором «направлении» галстук произошел ли это домохозяйство 5, которые совместно с домохозяйством 3 или наоборот, родственная ранг еще 1

      HH1 HH2 RANK 
          5  3  1 
          3  5  1 

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

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

ВТОРАЯ СЕМЬЯ с повторными СВЯЗЕЙ

 COL.A COL.B 
ROW  HH1 HH2 
1  1  1 
2  1  2 
3  1  3 
4  2  1 
5  2  4 
6  3  1 
7  3  2 
8  3  4 
9  4  2 

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

ДВУХ СЕМЕЙ БЕЗ ПОВТОРНЫХ СВЯЗЕЙ

 COL.A COL.B 
ROW  HH1 HH2 
1  1  1 
2  1  2 
3  1  3 
4  2  4 
5  3  2 
6  3  4 

Что я имею сделано

Я написал простую команду для размещения информации о hh1 и HH2 в ту же клетку:

= A1 & "|" & В1

В случае второго ряда, это выглядит как 1 | 2 внутри ячейки C2

HH1 и НН2 объединены в колонке С, так как я буду иметь возможность сравнить все из семей в колонке C друг другу? Возможно, правило подсветки, если повторение происходит? Или в другом списке столбцов, если это удаление или сохранение?

Благодарим вас за помощь.

ответ

0

Я предлагаю простой COUNTIFS, чтобы сделать работу, как это:

=(COUNTIFS(A$1:A1,B2,B$1:B1,A2)+COUNTIFS(A$1:A1,A2,B$1:B1,B2))>0 

начиная с C2, а затем скопировать вниз. Он покажет TRUE для каждой строки, находящейся в пределах диапазона выше, и false, если нет. Ich проверяет как x/y, так и y/x (порядок не имеет значения)

Теперь просто фильтруйте col C, чтобы показывать только строки с TRUE. Затем просто выберите и удалите его.

Это также работает с численными значениями, такими как имена.

Если у вас есть какие-либо вопросы, просто спросите;)

Вы также можете обернуть его, чтобы получить больше информации, как это:

=IF((COUNTIFS(A$1:A1,B2,B$1:B1,A2)+COUNTIFS(A$1:A1,A2,B$1:B1,B2)),"",COUNTIFS(A:A,B2,B:B,A2)+COUNTIFS(A:A,A2,B:B,B2)) 

Для C2 и скопировать вниз. C1 получает:

=COUNTIFS(A:A,B2,B:B,A2)+COUNTIFS(A:A,A2,B:B,B2) 

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

Все сделано по телефону, могут содержать ошибки

0

Используйте =((A1*B1)/(A1+B1))*((A1*B1)+(A1+B1)) для создания уникальных идентификаторов. Затем используйте «Удалить дубликаты» на панели «Инструменты данных» вкладки «Данные», чтобы удалить все строки, содержащие дубликаты. Или, наоборот, используйте что-то вроде =IF(IFNA(MATCH(A2,A$1:A1,0),TRUE())=TRUE,"First Share",""), перетаскиваемого из строки 2, чтобы идентифицировать First Shares.

Смежные вопросы