Разделение повторяющихся значений VBA - PullRequest
0 голосов
/ 18 июня 2020

У меня есть рабочий лист, содержащий 3 столбца: имя, город и образование.

В столбце A (Имена) у меня есть повторяющиеся значения.
Я хочу отделить его от других повторяющихся значений в столбце A что-то вроде этого показано на изображении ниже.

Возможно ли использование VBA?

image

Ответы [ 2 ]

2 голосов
/ 18 июня 2020

Этот код добавит пустую строку, где Names отличается. Допустим, в столбце A Names:

Sub SeparateDuplicates()
    Dim lastCell As Integer

    lastCell = Range("A" & Rows.Count).End(xlUp).Row

    For i = lastCell To 2 Step -1
        If Range("A" & i) <> Range("A" & i).Offset(-1, 0) Then
            Range("A" & i & ":C" & i).Insert Shift:=xlDown
        End If
    Next i
End Sub
0 голосов
/ 18 июня 2020

В Excel уже есть опция удаления дубликатов на ленте. Данные-> Удалить дубликаты. Вы также можете сделать это с помощью расширенных фильтров. Если вам нужно сделать это с помощью VBA, например:

Sub RemoveDuplicates()
    ActiveSheet.Range("$A$1:$A$5").RemoveDuplicates Columns:=1, Header:=xlNo
End Sub

Где вам нужно поместить свой диапазон и свой столбец. Очень полезный инструмент для извлечения кода VBA для определенного действия - это средство записи макросов на ленте, Разработчик -> RecordMacro, выполняет ваше действие и останавливает запись, а затем вы можете проверить код, сгенерированный для записанных вами действий. Это не самый чистый код, но вы можете найти там строки кода для определенных c действий, которые вам нужны.

Надеюсь, что это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...