• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Как сгруппировать строки в Excel по данным столбцов (телефон, сайт, соц.сети)?

  • Автор темы Автор темы megagogo
  • Дата начала Дата начала

megagogo

Новые
Регистрация
5 Июл 2014
Сообщения
28
Реакции
0
Баллы
0
Как сгруппировать строки в 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 (из примера, это все образно, чтобы расписать суть проблемы). Через ВПР я не представляю, как это все отфильтровать.

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

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

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

ну я даже не знаю, а какие формулы тут лучше использовать? Раньше я только ВПР использовал, но такое ощущение что этого недостаточно, или может надо как-то по особенному использовать ВпР, чтобы так сгруппировать все?
 
Да то-же просто!
Ой, не скажи )))
Жена, к счастью, уже бывшая, работает на порося... простите, на почте россии. В 1С один товар может оказаться под парой десятков наименований: ошибки операторов, окончивших школы в разных приходах, разные партии товаров, неодновременность доставок по области одной партии и куча других причин, включая разный порядок слов во многословных наименованиях или разное округление цифр.
разве не бывает ситуации, когда на одной улице несколько магазинов одной сети и под одним названием, а номера домов разные? Сплошь и рядом!
А когда в одном доме три магнита и один товар завезён во все три?

Простигосподи, но велик могучим руский языка. Вспомни рекомендацию Центрального штаба партизанских отрядов: " В шифровках ДО шифрования делать максимальное количество грамматических ошибок и кодировать вместе с ними. Русский поймёт, а враг зае..мучается раскодировать"
 
ну я даже не знаю, а какие формулы тут лучше использовать?
Да просто забивайте данные в определённой Вами последовательности, а потом фильтром отсортируете.
Вот я и написал:
Учитывая то, что в списке более тридцати тысяч строк - адова работёнка, даже учитывая автоперенос.
А когда в одном доме три магнита и один товар завезён во все три?
В поиске фильтрануть по наименованию товара.
Русский поймёт, а враг зае..мучается раскодировать"
tehno006
 
Ой, не скажи )))
Жена, к счастью, уже бывшая, работает на порося... простите, на почте россии. В 1С один товар может оказаться под парой десятков наименований: ошибки операторов, окончивших школы в разных приходах, разные партии товаров, неодновременность доставок по области одной партии и куча других причин, включая разный порядок слов во многословных наименованиях или разное округление цифр.

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

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

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

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


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

не совсем понял, вы говорите что нужно потом отсортировать - что вы имеете в виду? я хотел, чтобы был столбец, справа от таблицы например, чтобы там было: сеть №1, сеть №2... сеть №100... и т.д.
Там магазинов (несколько магазинов одной сети) - будет точно больше сотни, а может и больше тысячи... вручную это делать вообще не вариант(
 
Несколько раз прогнать данные через последовательность фильтров.
Берём поле адреса, выгружаем в текст, прогоняем через распознавание строк.

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

После прогона упорядочиваем и приводим к единому стилю, потом возвращаем в исходный файл.

И такой же примерно фокус проделываем с каждым сомнительным столбцом по очереди.
 
Ну, тады, нанять штат внимательных машинисток, человек двести, чтоб они оперативно всё вносили.
Там магазинов (несколько магазинов одной сети) - будет точно больше сотни, а может и больше тысячи... (
Это что за "Росстат" такой, что нужно внести в реестр все имеющиеся в мире магазины с имеющимся у них товаром?
вручную это делать вообще не вариант(
Если в мировом масштабе - то ДА!
Одному частному лицу, для личного потребления это не реально.
А если Вы представляете один из "Гос.органов", то такая информация обрабатывается на абсолютно других подходах и принципах.
Туманен смысл сей затеи.
 
Comma separated value!!!
 
Не запятыми, столбцами. С запятыми, как раз, "каша" и выходит.
Почему? Пустой столбец в строке - ничего между запятыми на его месте. Стандартная выгрузка с экселя. Хотя я до сих пор пользуюсь сам и ставлю клиентам исчо 2003 офис с навесками к нему :))
P.S. Посмотрел: оказывается жене 2010 ставил. Новьё!!!
 
Назад
Сверху