В файле порядка 300 тыс.записей, необходимо разбить столбец на несколько. Я пользуюсь функциями ПОИСК, ЛЕВСИМВ, ПРАВСИМВ, ПСТР, но проблема в том, что трудно выделить диапазон строк, к которым применить определенную функцию. Может быть у кого-нибудь появятся мысли? Или возможно другое решение?
Разбить столбец на несколько при разных разделителях
13.12.2015 19:31:47
|
|
|
|
13.12.2015 19:45:52
Вот как, например понять, что в тексте , ул.МИРА, д.81 кв.22 пропущены район и регион?
There is no knowledge that is not power
|
|
|
|
13.12.2015 20:14:24
Информация была собрана из разных источников, поэтому возможно, что каких-то данных не хватает. В этом и есть вся проблема.
|
|
|
|
14.12.2015 01:16:37
shoa,добавлю,что,если,текста ул. не надо,используйте в столбце F вариант функции zzz
|
|||
|
|
14.12.2015 01:37:31
shoa,если будете использовать вариант #6 ,то используйте такой прикрепленный файл-пример:
|
|
|
|
14.12.2015 15:13:36
«Всё гениальное просто» перефразировка афоризма Леонардо да Винчи
|
|||
|
|
14.12.2015 18:13:59
добрый вечер,Demonic,отвечаю на Ваш вопрос, в #8,функция yyy1 вытягивает номер дома,а функция yyy2 соответственно номер квартиры,
используются стандартные регулярные выражения,отрабатывается также вариант наличия одного числа или отсутствия чисел. функция zzz выделяет улицу, ищет первую заглавную русскую букву справа,предварительно отсекая букву А,используя Split с разделителем запятая. zzz2 также использует регулярные выражения,то есть фактически выделяет все левее улицы, при этом использует результат функции zzz Можно дополнить соответствующими функциями в приложенном файл-примере создателя темы, легко,- остальные графы: район,регион,строение,тип. Желательно,чтобы создатель темы опубликовал максимально расширенный файл-пример,например,сжав данные с помощью WinRaR. .. |
|
|
|
14.12.2015 19:11:26
Спасибо, sv2013, все замечательно!
|
|
|
|
07.12.2019 23:56:07
всем по привету! помогите решить вопрос с разбиением столбца с текстом на несколько. в файле пример. вариант с "текст по столбцам" не подходит, т.к. есть города с дефисом и отбор по дефису не подходит... в файлике даны
|
|
|
|
08.12.2019 00:38:36
А как программа должна понять, что дефис в Санкт-Петербург не учитывать?
Вариант: Ctrl+H и заменить Санкт-Петербург на Санкт_Петербург. Аналогично для других городов с дефисом. |
|
|
|
08.12.2019 00:43:07
так и я о том же... т.е. тут никаких вариантов нет получается для автоматизации процесса?
|
|
|
|
08.12.2019 00:46:53
Сверка со списком городов с дефисами
|
|
|
|
08.12.2019 00:47:01
Ну почему нет? Сначала сделайте замену, выполните макрос, потом обратную замену. Если есть отдельный список городов с дефисами, то и замену можно автоматизировать.
|
|
|
|
08.12.2019 00:47:59
И ладно бы если бы только Санкт-Петербург к примеру, а если еще Улан-Уде, Ростов-на-Дону и т.д., то тут как быть? ctrl+h не поможет...
|
|
|
|
08.12.2019 00:49:38
|
|||
|
|
08.12.2019 00:55:02
Спасибо! Это идея! А если не трудно, не могли бы Вы привести пример?
|
|
|
|
08.12.2019 01:05:13
Пример чего?
|
|
|
|
08.12.2019 12:36:56
Уважаемые форумчане! В примере показано как есть и как надо сделать, также есть список городов. Подскажите, пожалуйста, как разбить столбец сверяясь со списком, не совсем понимаю как это сделать...
|
|
|
|
08.12.2019 12:49:03
ЛегкийГолод, У вас можно просто:
выделяете столбец с данными; вкладка "Данные" - "Тест по столбцам" - разделитель "-" (тире) - готово. и списки не нужны.
Изменено: |
|
|
|
08.12.2019 12:51:08
Михаил Витальевич С.,
А как быть с Санкт-Петербург и другими аналогичными городами? |
|
|
|
08.12.2019 12:53:39
Kuzmich, да, немного поторопился
|
|
|
|
08.12.2019 12:54:12
|
|||
|
|
08.12.2019 12:58:16
Я думаю надо в списке городов сделать второй столбец, где заменить знак - на знак подчеркивания _
Затем на листе Отчет произвести замену городов с - на города с _ Затем текст по столбцам и обратную замену |
|
|
|
08.12.2019 13:10:58
Да я, в принципе, так и сделал, только это долго. Я думал что можно как то это быстрей сделать.
|
|
|
|
08.12.2019 13:29:14
ЛегкийГолод, смотря каким методом вы это сделали; допустимы ли макросы и немного зависит от количества записей.
|
|
|
|
08.12.2019 13:29:30
ЛегкийГолод, Если задача разовая, то сперва немного обрабатываем массивной
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2; IFERROR(INDEX(список_городов!A:A;SMALL(IF(ISNUMBER(FIND(список_городов!$A$1:$A$1147;A2));ROW($A$1:$A$1147));1));"");IFERROR(SUBSTITUTE(INDEX(список_городов!A:A;SMALL(IF(ISNUMBER(FIND(список_городов!$A$1:$A$1147;A2));ROW($A$1:$A$1147));1));"-";CHAR(1));"")); IFERROR(INDEX(список_городов!A:A;SMALL(IF(ISNUMBER(FIND(список_городов!$A$1:$A$1147;A2));ROW($A$1:$A$1147));2));"");IFERROR(SUBSTITUTE(INDEX(список_городов!A:A;SMALL(IF(ISNUMBER(FIND(список_городов!$A$1:$A$1147;A2));ROW($A$1:$A$1147));2));"-";CHAR(1));""));"-";",");CHAR(1);"-");",";"-,";4);",";"-,";3) Копируем как значения, и разбиваем на столбцы разделителем "," Если в тексте встречается , то меняем на что либо другое, например на char(9) и табуляцию соответственно.
По вопросам из тем форума, личку не читаю.
|
|
|
|
08.12.2019 13:34:52
БМВ, Миш, в России, как выяснилось, всего 48 городов с "-"; можно вынести их в отдельный список и массив список_городов!$A$1:$A$1147 в 25 раз.
|
|
|
|
08.12.2019 13:37:58
Михаил Витальевич С., записей не больше 3000 строк и допустимо ВСЕ, лишь бы правильно разбить столбец =)
|
||||
|
|
|||