удаление дубликатов в эксель ПО СТОЛБЦАМ

программирование программы excel

собственно сабж.

нужно удалять дубликаты. только по столбцам

например:

удаляем это

1 - 2 - 1 - 3 - 2

должная остаться это

1 - 2 - 0 - 3 - 0

ноль это пустая ячейка

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

Примечание:
колонок всего 7
строк всего 60000

Примечание:
нашел макрос

в макросе предварительно нужно задать область


Sub DeleteDuplicateKeywords()

Dim rng As Range
Dim r As Long 'row iterator
Dim rowRng As Range ' a separate range for each ROW in rng.
Dim c As Long 'column iterator
Dim sKeyword As String
Dim bReview As Boolean

bReview = MsgBox("Do you want to preview which cells will be deleted?", vbYesNo)

Set rng = Range("A1:G31") '<-- change this as necessary for your requirements.

For r = 1 To rng.Rows.Count 'iterate over each ROW in the range

Set rowRng = rng.Rows(r)

For c = rowRng.Columns.Count To 1 Step -1 'iterate backwards over the columns, ignoring the first column.

sKeyword = rowRng.Cells(c).Value 'assign the cell value to a variable

'Check to see if this keyword exists more than once in this row
If Application.WorksheetFunction.CountIf(rowRng, sKeyword) > 1 Then
'if it does, then delete it.
If bReview Then
rowRng.Cells(c).Interior.ColorIndex = 39
Else:
rowRng.Cells(c).Delete Shift:=xlToLeft
End If
End If
Next
Next

End Sub
Ответы:
эм, боюсь ошибится а если формулу применять к двум столбцам поочередно т.е 1ый сравнить со 2ым, потом выделить 2ой с 3им и применить формулу к ним и т.д. Иначе хз
=ЕСЛИ(СЧЁТЕСЛИ($A1:A1;A1)=1;A1;"")
так-то так


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.