2

У меня есть столбец, строки которого:

Фейсбук, скайп
Фейсбук, скайп
Facebook, Twitter, Skype
Facebook, Twitter
Фейсбук, скайп
Фейсбук, скайп
Facebook, Twitter, Skype
Facebook, Skype, Instagram, Viber

Как я могу выбрать только уникальные значения из этого диапазона данных, чтобы результат:

Facebook, Skype, Twitter, Instagram, Viber

3 ответа3

2

Скажем, у нас есть такие данные в столбце A:

Запуск этого макроса VBA:

Sub GatherUniques()
    Dim N As Long, cl As Collection
    Dim i As Long
    Set cl = New Collection
    N = Cells(Rows.Count, "A").End(xlUp).Row
    On Error Resume Next

    For i = 1 To N
        st = Replace(Cells(i, 1).Text, " ", "")
        ary = Split(st, ",")
        For Each a In ary
            cl.Add a, CStr(a)
        Next a
    Next i

    On Error GoTo 0
    st = cl.Item(1)
    For i = 2 To cl.Count
        st = st & "," & cl.Item(i)
    Next i
    Range("B1").Value = st
End Sub

Будет производить:

Макросы очень просты в установке и использовании:

  1. ALT-F11 открывает окно VBE
  2. ALT-I ALT-M открывает новый модуль
  3. вставьте материал и закройте окно VBE

Если вы сохраните книгу, макрос будет сохранен вместе с ней. Если вы используете версию Excel более поздней, чем в 2003 году, вы должны сохранить файл как .xlsm, а не .xlsx

Чтобы удалить макрос:

  1. откройте окно VBE, как указано выше
  2. очистить код
  3. закройте окно VBE

Чтобы использовать макрос из Excel:

  1. ALT-F8
  2. Выберите макрос
  3. Нажмите RUN

Чтобы узнать больше о макросах в целом, смотрите:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

а также

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

Макросы должны быть включены, чтобы это работало!

0

Я бы использовал блокнот ++ или MS Word. Скопируйте / вставьте столбец в него. Найти / заменить "," на вкладку. Скопируйте / вставьте обратно в Excel. Или, если это единственные данные на рабочем листе, вы можете попытаться сохранить их как CSV-файл и открыть обратно в Excel.

0

В разделе "Данные" используйте кнопку "Текст в столбцы" и в мастере выберите "с разделителями" и "запятая". Это разделит данные на отдельные биты, что позволит следующему шагу получить уникальные значения.

Затем в разделе "Данные" используйте "Расширенный фильтр" для каждого столбца и выберите "Копировать в другое место", для "Диапазон списка" выберите столбец из недавно расширенного диапазона данных, отметьте "Только уникальные записи" и выберите "Копировать в". место нахождения.

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

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

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