Как данные из одной ячейки (столбца) разнести на несколько?
Пользователь
Сообщений: Регистрация: 01.01.1970
08.02.2011 21:38:16
Добрый день!
Я сильно на "Вы" с Excel, но нет больше сил перебивать вручную:( Потому прошу помощи. Нужно данные, расположенные в одной ячейке разбить на три. Объясняю коряво, поэтому прикладываю файлы: как из таблицы файла 1 получить таблицу вида как в файле 2????
В следующий раз не нужно два файла: можно разные таблицы на разных листах или на одном листе две таблицы рядышком.
Пользователь
Сообщений: Регистрация: 22.12.2012
08.02.2011 22:00:46
В ячейку левее (например, в Е1) ="Автошина " & A1 & " " & C1 & " " & B1 и протануть вниз, потом как значения скопировать куда хотите. Но вот откуда брать данные типа "с камерй, без флапа" или "/A101020001/" я не понял.
Пользователь
Сообщений: Регистрация: 22.12.2012
08.02.2011 22:02:16
Что-то я похоже в файлах запутался... извините.
Пользователь
Сообщений: Регистрация: 22.12.2012
08.02.2011 22:15:23
Да, а назад операцию трудно сделать. Частично по группам можно, но полностью боюсь что не получится автоматизировать.
Guest
Гость
08.02.2011 23:49:00
{quote}{login=Юрий М}{date=08.02.2011 09:44}{thema=}{post}В следующий раз не нужно два файла: можно разные таблицы на разных листах или на одном листе две таблицы рядышком.{/post}{/quote}
Извините, учту.
Пользователь
Сообщений: Регистрация: 01.01.1970
08.02.2011 23:56:55
{quote}{login=Hugo}{date=08.02.2011 10:02}{thema=}{post}Что-то я похоже в файлах запутался... извините.{/post}{/quote}
Вот так: Автошина Amtel 11.00 R20 150/146 K К179 с камерй, без флапа или так: Автошина Amtel 165/65 R14 79 T Planet T-301 K-317 выглядит строка, разбить нужно: для первого примера: 1 столбец - Автошина Amtel 2 столбец - 11.00 R20 150/146 3 столбец - К179 с камерй, без флапа
Для второго: 1 столбец - Автошина Amtel 2 столбец - 165/65 R14 79 T 3 столбец - Planet T-301 K-317
Подозреваю невозможность из-за разного колличества символов в строках, но может быть хотя бы частичная автоматизация процесса возможна?
Модератор
Сообщений: Регистрация: 14.09.2012
Контакты см. в профиле
09.02.2011 00:07:15
{quote}{login=Ksu_Sanders}{date=08.02.2011 11:56}{thema=Re: }{post}{quote}{login=Hugo}{date=08.02.2011 10:02}{thema=}{post}{/post}{/quote}может быть хотя бы частичная автоматизация процесса возможна?{/post}{/quote} Начните с Данные - Текст по столбцам.
Пользователь
Сообщений: Регистрация: 21.12.2012
09.02.2011 02:08:07
Наличие скоростного индекса в наименовании обязательно
Текст по столбцам не удобно, когда в одном списке такие разные данные. Мне кажется, удобнее использовать UDF формулу
Function Substring(Текст As String, Символ_разделитель As String, _ Начальный_Номер_фрагмента As Long, Конечный_Номер_фрагмента As Long) As String '--------------------------------------------------------------------------------------- ' URL : ' Purpose : Выделяет из текста субстринг/и, ориентируясь по символам-разделителям ' Notes : Substring(текст; символ_разделитель; Начальный_Номер_фрагмента, Конечный_Номер_фрагмента), где ' текст - текст, который делим ' символ_разделитель - символ, который надо считать разделителем фрагментов ' Начальный_Номер_фрагмента - порядковый номер фрагмента, с которого нужна выборка ' Конечный_Номер_фрагмента - порядковый номер фрагмента, по который нужна выборка '--------------------------------------------------------------------------------------- On Error Resume Next Dim sArr() As String, li As Long sArr = Split(Application.Trim(Текст), Символ_разделитель) If Конечный_Номер_фрагмента > 0 Then Начальный_Номер_фрагмента = Начальный_Номер_фрагмента - 1 Конечный_Номер_фрагмента = Конечный_Номер_фрагмента - 1 For li = Начальный_Номер_фрагмента To Конечный_Номер_фрагмента Substring = IIf(li = Начальный_Номер_фрагмента, sArr(li), Substring & _ Символ_разделитель & sArr(li)) Next li Else Substring = Split(Application.Trim(Текст), _ Символ_разделитель)(Начальный_Номер_фрагмента - 1) End If End Function
Её можно оперативно корректировать для каждой группы или для каждой ячейки, где алгоритм деления меняется. Я в примере до половины списка подкорректировал формулу, нижнюю часть оставил, как протянулась.