Страницы: 1
RSS
Разбить ячейки с данными (Не работает разделитель), Задача-разбить ячейки с каталожными номерами, чтобы в каждой ячейке было по одному номеру
 
Задача-разбить ячейки с каталожными номерами, чтобы в каждой ячейке было по одному номеру
Помогите пожалуйста решить ситуацию: В ячейке сразу несколько каталожных номеров. При этом некоторые состоят только из второй части номера. Необходимо сделать чтобы каждый номер был отдельно, в следующей колонке



SE-2071L45046-39026
         -39016
    45047-39045
SE-208245406-39026
         -39016
SE-209145046-29016
         -29015
SE-209245406-29016
         -29015
SE-2101R45046-39056
         -39055
SE-2101L45047-39036
         -39035
SE-210245406-39036
Изменено: БМВ - 08.09.2022 13:02:06
 
Вот образец. Нужно чтобы номер каталога был каждый в следующей колонке
Изменено: Сергей Щапов - 07.09.2022 12:58:56
 
Сергей Щапов,
нужен небольшой файл-пример в excel
 
Вот файл пример) голову сломал уже
 
Сергей Щапов, в файле как есть. Покажите как должно быть.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Цитата
написал:
Сергей Щапов, в файле как есть. Покажите как должно быть.
 
Сергей Щапов,
как вариант:
https://www.planetaexcel.ru/techniques/24/22831/
Изменено: evgeniygeo - 07.09.2022 13:34:14
 
Код
=ТРАНСП(ПОДСТАВИТЬ(ФИЛЬТР.XML("<j><i>"&ПОДСТАВИТЬ(ПОДСТАВИТЬ(B3;СИМВОЛ(32);"х");СИМВОЛ(10);"</i><i>")&"</i></j>";"//i");"ххххх";ЛЕВБ(B3;5)))
 
выделить диапазон (в нём должен быть ТОЛЬКО ОДИН столбец), выполнить макрос, справа будет результат
Изменено: JayBhagavan - 07.09.2022 13:52:07

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Цитата
написал:
=ТРАНСП(ПОДСТАВИТЬ(ФИЛЬТР.XML("  "&ПОДСТАВИТЬ(ПОДСТАВИТЬ(B3;СИМВОЛ(32);"х");СИМВОЛ(10);"  ")&"  ";"//i");"ххххх";ЛЕВБ(B3;5)))
ВАУ!!! Это просто шикарно! Спасибо большое!
 
Ну или можно ещё так
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    Разделить1 = Table.ExpandListColumn(Table.TransformColumns(Источник, {{"O.E.M. NO.", Splitter.SplitTextByDelimiter("#(lf)", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "O.E.M. NO."),
    Разделить2 = Table.SplitColumn(Разделить1, "O.E.M. NO.", Splitter.SplitTextByDelimiter("-", QuoteStyle.Csv), {"O.E.M. NO..1", "O.E.M. NO..2"}),
    Тип = Table.TransformColumnTypes(Разделить2,{{"O.E.M. NO..1", Int64.Type}, {"O.E.M. NO..2", Int64.Type}}),
    Заполнить = Table.FillDown(Тип,{"O.E.M. NO..1"}),
    Объединить = Table.CombineColumns(Table.TransformColumnTypes(Заполнить, {{"O.E.M. NO..1", type text}, {"O.E.M. NO..2", type text}}, "ru-RU"),{"O.E.M. NO..1", "O.E.M. NO..2"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Сведено"),
    Группа = Table.Group( Объединить, {"555 NO."}, {{"Количество", each Table.Transpose(Table.LastN(Table.SelectColumns(_, "Сведено"), 6)) }}),
    Развернуть = Table.Combine (Группа[Количество])
in
    Развернуть
 
Тимофеев, А если будет так:
Код
45046-39026
     -39016
45047-39045
     -39016

Цитата
evgeniygeo написал:
как вариант:
Тоже не вариант, попробуйте вставить значения которые я показал выше
Изменено: Msi2102 - 07.09.2022 15:17:22
 
Msi2102, да будет все не так с таким вариантом )
 
Цитата
Тимофеев написал:
Msi2102, да будет все не так с таким вариантом )
А ТС радостный уже убежал, наверное больше и не появится, потом сюрпризом будет. Ну ничего, нужно нормальные примеры прикладывать
Страницы: 1
Читают тему (гостей: 1)
Наверх