1

У меня в Excel 2010 таблица 3800+. Я хотел бы идентифицировать дубликаты по 6 столбцам, многие с текстом, некоторые с IP-адресами и именами хостов, чтобы отражать точные данные. Я попробовал старый метод удаления дубликатов, условное форматирование, выделение нескольких строк разными цветами с помощью макроса VBA, объединение столбцов, а затем выполнение COUNTIFS и IF. Излишне говорить, что с типом данных у меня ни один из них точно не работал. С этим набором данных цель состоит в том, чтобы сократить список примерно на 1900 или около того, потому что я знаю, что довольно много дубликатов (так как я специально объединил старый набор и новый набор данных, чтобы видеть старые заметки). Однако новейшие методы только сокращены на 100

Я хочу идентифицировать их, а затем быть в состоянии отфильтровать их вместе с оригиналом, а затем легко удалить дубликаты, выделив и нажав «Удалить».

Кто-нибудь делал что-то подобное раньше? Я новичок в Excel, хотя у меня есть техническое образование, пожалуйста, сделайте любые объяснения новичкам дружественными Хотелось бы иметь какие-то конкретные идеи для решения этой ситуации, если у кого-то есть такие

Нажмите здесь для примера

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

Я хочу уменьшить дубликаты в соответствии с A2 & B2 & E2 & J2 & L2

Спасибо,

РД

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

Я хочу уменьшить дубликаты в соответствии с A2 & B2 & E2 & J2 & L2

2 ответа2

0

Попробуй это,,

Sub RemoveDuplicate()

Range("A1:D10").RemoveDuplicates Columns:= Array(1)

End Sub

Выше однострочная команда. Или используйте проверку данных, чтобы остановить Дубликаты ,, В Проверке данных выберите Пользовательский, Формула, = Счет ($ A $ 2:$ D $ 100, A2)= 1

Или Найти повторяющиеся строки ,, = if(Countifs ($ A $ 2:$ A $ 100, A2, $ B $ 2:$ B $ 100, b2)> 1, "Duplicate", "Unique")

Используйте этот код,

Sub DeleteRow()

Dim lRow As Long Dim iCntr As String lRow = 20 Для iCntr = lRow To 1 Шаг -1 Если клетки (iCntr, 1) = "Дублировать", то строки (iCntr).Удалить конец, если следующий конец Sub

0

Например, создайте новый столбец Q и напишите формулу:=A2&B2&E2&J2&L2

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

В столбце R напишите формулу:
=COUNTIF($Q$2:Q3800,Q2) и перетащите его вниз

$Q$2:Q3800 - новый столбец для объединенных ячеек

у вас может быть больше Q3800, чтобы записать последнюю строку в ваших данных, но оставьте $ in $Q$2 в этом случае у вас будет 1 для строк без дубликатов и первая строка для дубликатов (остальные 2,3,4 ... зависит от количества дубликатов)
В конце сортируйте ваши данные по столбцу R По убыванию (4,3,2,1), в этом случае дубликаты будут показываться в начале, а не дубликаты в конце (1), вы можете удалить все строки с номером> 1

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

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