Технический форум

Технический форум (http://www.tehnari.ru/)
-   Офисные (http://www.tehnari.ru/f77/)
-   -   Как сгруппировать строки в Excel по данным столбцов (телефон, сайт, соц.сети)? (http://www.tehnari.ru/f77/t271772/)

megagogo 01.08.2021 16:55

Как сгруппировать строки в Excel по данным столбцов (телефон, сайт, соц.сети)?
 
Здравствуйте!
Пожалуйста, если тут на форуме есть кто-то, кто разбирается в Excel, или есть хоть какие-то предположения, как можно это реализовать, подскажите.... Вопрос очень сложный, уже не первый месяц в поисках решения, но пока ничего толком не смог придумать, поэтому решил задать вопрос на форуме.
*********
Проблемный файл прикрепляю, чтобы вам было более понятно, о чем речь:
https://yadi.sk/d/z0FNjYrN1e6UDA
*********
Суть такая: есть ~30.000 магазинов.
Каждый магазин = отдельная строка в таблице.
НО среди этих 30.000 магазинов есть большое количество СЕТЕЙ (т.е. сеть магазинов "4 лапы" например, очень большая, и все магазины этой сети разбросаны по таблице конкретно).
********
В таблице есть следующие столбцы, к которым я пытался применить формулу ВПР, но не очень успешно, т.к. все равно не получается объединить все магазины...

У меня получается сделать например так:
- Формула ВПР на сайты (т.е. если есть строки, у которых есть 1 URL общий, то их сгруппировать).
- Формула ВПР на одинаковые номера телефонов (т.е. если в таблице есть строки с одинаковыми телефонами, то их я могу сгруппировать).
- Формула ВПР на одинаковые ссылки на соц.сети (т.е. если соц.сеть Вконтакте, Инстаграм, фейсбук и т.п. сходятся - то они сгруппировываются легко).

НО этот способ работает не до конца... Потому что бывает ситуация, постараюсь описать максимально подробно:
-- Строка №1 - 3 телефона, нет никаких дополнительных данных.
-- Строка №10 - 3 телефона (1 из телефонов сходится с строкой №1), но есть ссылка на сайт.
--- Строка №15 - 3 телефона (телефоны не сходятся с строкой №1 и №10), но сайт сходится со строкой №10.
--- Строка №20 - 3 телефона (они не сходятся с другими), сайта нет, но есть инстаграм (которого нет в строках №1, 10, 15).
---- Строка №25 - 1 телефон (одинаковый со строкой №20), но нет инстаграма, есть ссылка на Вконтакте (которых не было ранее).
---- Строка №30 - 3 телефона (уникальных), есть ссылка на Вконтакте.

И так можно продолжать в принципе дальше, но суть такая: понятно, что если телефон, сайт, соц.сети одинаковые, то это одна компания... НО как их объединить? Строки №1, 10, 15, 20, 25, 30 (из примера, это все образно, чтобы расписать суть проблемы). Через ВПР я не представляю, как это все отфильтровать.

(+ пожалуйста, не пишите ответы что-то вроде - купи нормальную базу, и не думай о том, как фильтровать данные), потому что в любом случае, хотелось бы самому прежде всего разобраться с этой проблемой, т.к. даже в покупных базах, если их будет много, то можно столкнуться с такой же ситуацией...

Буду рад любой помощи и совету, как это реализовать, если кто-то вообще когда-то занимался подобным)

Fisher 01.08.2021 17:34

Цитата:

Сообщение от megagogo (Сообщение 2760673)
как это реализовать

Если я правильно понял вашу ситуацию то "До боли" просто!
К примеру: в первом левом столбце первой строки пишите главный признак (название сети магазинов), во втором и последующих столбцах - номера телефонов (каждый в отдельном столбце строки), в следующем столбце - название сайта, в следующем - соцсети (каждую в свой столбец) и т.д. Естественно, соблюдать порядок занесения информации по столбцам в каждой строке, т.е. если (предположим) в первой строке в восьмом столбце занесен адрес ВКонтакте, а следующим идёт Инстаграм, то и в последующих строках других торговых точек эта-же последовательность должна соблюдаться.
То-есть, Вам нужно максимально разделить по столбцам индивидуальную информацию о торговых точках. Затем сгруппировать первый столбец по (предположим) алфавиту, а Ексель доделает всё автоматом в алфавитном порядке и далее по вторичным и последующим признакам каждой строки отдельно.
В общем - всё стандартно, просто больше столбцов с информацией.

Fisher 01.08.2021 17:48

И ещё: естественно, ту-же самую разбивку нужно сделать с адресами торговых точек - название города в одном столбце, название улицы в другом, номер дома в третьем.
Учитывая то, что в списке более тридцати тысяч строк - адова работёнка, даже учитывая автоперенос.

megagogo 01.08.2021 17:54

Цитата:

Сообщение от Fisher (Сообщение 2760675)
Если я правильно понял вашу ситуацию то "До боли" просто!
К примеру: в первом левом столбце первой строки пишите главный признак (название сети магазинов), во втором и последующих столбцах - номера телефонов (каждый в отдельном столбце строки), в следующем столбце - название сайта, в следующем - соцсети (каждую в свой столбец) и т.д. Естественно, соблюдать порядок занесения информации по столбцам в каждой строке, т.е. если (предположим) в первой строке в восьмом столбце занесен адрес ВКонтакте, а следующим идёт Инстаграм, то и в последующих строках других торговых точек эта-же последовательность должна соблюдаться.
То-есть, Вам нужно максимально разделить по столбцам индивидуальную информацию о торговых точках. Затем сгруппировать первый столбец по (предположим) алфавиту, а Ексель доделает всё автоматом в алфавитном порядке и далее по вторичным и последующим признакам каждой строки отдельно.
В общем - всё стандартно, просто больше столбцов с информацией.

Не знаю даже, все ли так просто, как вы говорите....
Просто бывает ситуация , когда например не заполнен сайт и ничего, названия магазинов тоже могут быть разными, а сеть в итоге одна..... И как это все сгруппировать - или кучей ВПР, или вообще думал, что может есть вариант какой-то, сделать это попроще((
+ По адресу вообще нет смысла группировать, т.к. бывает что в 1 доме по адресу бывает 2-3 магазина разных компаний...(

Fisher 01.08.2021 18:02

Да то-же просто!
Если в какой-то строке нет сайта - оставляйте этот столбец пустым и продолжайте заполнять имеющуюся информацию в выбранной Вами последовательности занесения.
В ситуации, когда сеть одна, а магазинов много и они под разными названиями - то в первом столбце пишите название сети, во втором Название магазина, в третьей название города, в четвёртой - название улицы, в пятой номер дома и т.д.
Цитата:

Сообщение от megagogo (Сообщение 2760678)
По адресу вообще нет смысла группировать, т.к. бывает что в 1 доме по адресу бывает 2-3 магазина разных компаний...(

А разве не бывает ситуации, когда на одной улице несколько магазинов одной сети и под одним названием, а номера домов разные? Сплошь и рядом!

Fisher 01.08.2021 18:20

Цитата:

Сообщение от megagogo (Сообщение 2760678)
что может есть вариант какой-то, сделать это попроще((

Тут я Вас огорчу!
Компьютер не обладает интеллектом и оперирует машинными кодами, которые мы, опосредовано, через "признаки" вводим в него.
В данной ситуации: чем больше таких признаков (столбцов в строке, с соблюдением последовательности внесённой информации между строками) мы вносим - тем "легче и точнее" компьютер рассортирует информацию.

megagogo 01.08.2021 18:23

Цитата:

Сообщение от Fisher (Сообщение 2760681)
Тут я Вас огорчу!
Компьютер не обладает интеллектом и оперирует машинными кодами, которые мы, опосредовано, через "признаки" вводим в него.
В данной ситуации: чем больше таких признаков (столбцов в строке, с соблюдением последовательности внесённой информации между строками) мы вносим - тем "легче и точнее" компьютер рассортирует информацию.

ну я даже не знаю, а какие формулы тут лучше использовать? Раньше я только ВПР использовал, но такое ощущение что этого недостаточно, или может надо как-то по особенному использовать ВпР, чтобы так сгруппировать все?

prima 01.08.2021 18:23

Цитата:

Сообщение от Fisher (Сообщение 2760679)
Да то-же просто!

Ой, не скажи )))
Жена, к счастью, уже бывшая, работает на порося... простите, на почте россии. В 1С один товар может оказаться под парой десятков наименований: ошибки операторов, окончивших школы в разных приходах, разные партии товаров, неодновременность доставок по области одной партии и куча других причин, включая разный порядок слов во многословных наименованиях или разное округление цифр.
Цитата:

Сообщение от Fisher (Сообщение 2760679)
разве не бывает ситуации, когда на одной улице несколько магазинов одной сети и под одним названием, а номера домов разные? Сплошь и рядом!

А когда в одном доме три магнита и один товар завезён во все три?

Простигосподи, но велик могучим руский языка. Вспомни рекомендацию Центрального штаба партизанских отрядов: " В шифровках ДО шифрования делать максимальное количество грамматических ошибок и кодировать вместе с ними. Русский поймёт, а враг зае..мучается раскодировать"

Fisher 01.08.2021 18:36

Цитата:

Сообщение от megagogo (Сообщение 2760682)
ну я даже не знаю, а какие формулы тут лучше использовать?

Да просто забивайте данные в определённой Вами последовательности, а потом фильтром отсортируете.
Цитата:

Сообщение от prima (Сообщение 2760683)
Ой, не скажи )))

Вот я и написал:
Цитата:

Сообщение от Fisher (Сообщение 2760677)
Учитывая то, что в списке более тридцати тысяч строк - адова работёнка, даже учитывая автоперенос.

Цитата:

Сообщение от prima (Сообщение 2760683)
А когда в одном доме три магнита и один товар завезён во все три?

В поиске фильтрануть по наименованию товара.
Цитата:

Сообщение от prima (Сообщение 2760683)
Русский поймёт, а враг зае..мучается раскодировать"

tehno006

megagogo 01.08.2021 18:37

Цитата:

Сообщение от prima (Сообщение 2760683)
Ой, не скажи )))
Жена, к счастью, уже бывшая, работает на порося... простите, на почте россии. В 1С один товар может оказаться под парой десятков наименований: ошибки операторов, окончивших школы в разных приходах, разные партии товаров, неодновременность доставок по области одной партии и куча других причин, включая разный порядок слов во многословных наименованиях или разное округление цифр.

А когда в одном доме три магнита и один товар завезён во все три?

Простигосподи, но велик могучим руский языка. Вспомни рекомендацию Центрального штаба партизанских отрядов: " В шифровках ДО шифрования делать максимальное количество грамматических ошибок и кодировать вместе с ними. Русский поймёт, а враг зае..мучается раскодировать"

Скажите, возможно у вас может есть идеи, если вы в теме, как это можно реализовать, что все сгруппировать? Или тут вообще без шансов? (


Часовой пояс GMT +4, время: 06:21.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.