Страницы: 1
RSS
Поиск одинаковых мейлов в большом списке
 
Доброго всем дня!

Такая проблема:
- Есть список мейл адресов (более 10 000)
- Среди них есть одинаковые ящики у разных людей (например: petr221@mail.ru, dima221@yandex.ru, lexa322@mail.ru и так далее)
- Необходимо сначала посчитать сколько всего ящиков разных площадок (на нашем примере @mail.ru - 2, @yandex.ru - 1)
- И необходимо потом процентное соотношение от общего числа мейлов в списке

Файлик прилагаю для примера.
Заранее большое спасибо!
 
Vakhtang0770, с дополнительным столбцом и сводной  так?
Не бойтесь совершенства. Вам его не достичь.
 
с доп столбцами
Лень двигатель прогресса, доказано!!!
 
Текст по столбцам с разделителем @ и сводная.
По вопросам из тем форума, личку не читаю.
 
БМВ,
Цитата
БМВ написал:
Текст по столбцам с разделителем
хорошая идея) а то все формулы формулы да формулы с PQ и макросами)
Изменено: Mershik - 19.12.2019 15:25:49
Не бойтесь совершенства. Вам его не достичь.
 
Цитата
Сергей написал:
с доп столбцами
Такой вид по итогу должен получиться
Изменено: Vakhtang0770 - 19.12.2019 15:30:17
 
Цитата
Vakhtang0770 написал:
Такой вид по итогу должен получиться
Цитата
БМВ написал:
Текст по столбцам с разделителем @ и сводная.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
БМВ  написал:Текст по столбцам с разделителем @ и сводная.
Цитата
БМВ написал:
БМВ  написал:Текст по столбцам с разделителем @ и сводная.
Текст разделил в легкую, а про сводную не подскажете в двух словах? Извините за такие банальные вопросы
 
Vakhtang0770, вы читаете с конца ?
Не бойтесь совершенства. Вам его не достичь.
 
Цитата
Mershik написал:
Vakhtang0770 , вы читаете с конца ?
Нет, все с самого начала
 
Цитата
Vakhtang0770 написал:
про сводную не подскажете в двух словах?
Сам не умею, но научить - могу!
ПРИЁМЫ / Сводные таблицы
 
только второй столбец назовите, домен или ….
Изменено: БМВ - 19.12.2019 15:42:51
По вопросам из тем форума, личку не читаю.
 
мой пост #2 видимо  НЕВИДИМ 8)  :D  
Изменено: Mershik - 19.12.2019 15:46:56
Не бойтесь совершенства. Вам его не достичь.
 
Off
Цитата
Mershik написал:
мой пост #2 видимо  НЕВИДИМ    
кто сдесь?  :D
По вопросам из тем форума, личку не читаю.
 
=ЕСЛИОШИБКА(ИНДЕКС(ПСТР($A$2:$A$27;ПОИСК("@";$A$2:$A$27)+1;50);НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО(ПСТР($A$2:$A$27;ПОИСК("@";$A$2:$A$27)+1;50))=ЛОЖЬ; ЕСЛИ(ПОИСКПОЗ(ПСТР($A$2:$A$27;ПОИСК("@";$A$2:$A$27)+1;50);ПСТР($A$2:$A$27;ПОИСК("@";$A$2:$A$27)+1;50);0)=СТРОКА($1:$26);ПОИСКПОЗ(ПСТР($A$2:$A$27;ПОИСК("@";$A$2:$A$27)+1;50);ПСТР($A$2:$A$27;ПОИСК("@";$A$2:$A$27)+1;50);
0);"");"");СТРОКА()-1);1);"")

Формула массива, которая формирует список уникальных доменов (без доп столбцов), а дальше решение уже было. Как работает сам не знаю. Как отрезать домен украл у Сергей, а извлечение списка уникальных значений позаимствовал тут в комментарии Sam D.  
Я не волшебник, я только учусь.
 
Макросом
Код
Sub test()
Dim dicObj As Object
Dim i&
Set dicObj = CreateObject("scripting.dictionary")
  For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
    dicObj.Item(CStr(Split(Cells(i, "a"), "@")(1))) = dicObj.Item(CStr(Split(Cells(i, "a"), "@")(1))) + 1
  Next i
   Range("B2").Resize(dicObj.Count, 2) = Application.Transpose(Array(dicObj.keys, dicObj.Items))
  For i = 2 To Cells(Rows.Count, "C").End(xlUp).Row
    Cells(i, "D") = Cells(i, "C") / WorksheetFunction.Sum(Range("C2:C" & Cells(Rows.Count, "C").End(xlUp).Row))
    Cells(i, "D").NumberFormat = "0.00%"
  Next
End Sub
 
.
Страницы: 1
Наверх