Страницы: 1
RSS
Перенос данных из разных столбцов в два столбца
 
Добрый день! Нужно перенести данные всех столбцов в первые 2. Фаил вложил. Подскажите как это сделать? Столбцов много

Сеичас так:
артикул 1 артикул   3 артикул 5
артикул 2  артикул 4 артикул 6
А нужно так:
артикул   1
артикул 2
артикул 3
артикул 4
артикул 5
артикул 6
Изменено: Ил Боч - 02.12.2022 13:06:37
 
Можно через Power Query - почти все мышкой можно даже наклацать, кроме Table.Split...
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Столбец1", type text}, {"Столбец2", Int64.Type}, {"Столбец3", type text}, {"Столбец4", Int64.Type}, {"Столбец5", type text}, {"Столбец6", Int64.Type}, {"Столбец7", type text}, {"Столбец8", Int64.Type}, {"Столбец9", type text}, {"Столбец10", Int64.Type}, {"Столбец11", type text}, {"Столбец12", Int64.Type}, {"Столбец13", type text}, {"Столбец14", Int64.Type}, {"Столбец15", type text}, {"Столбец16", Int64.Type}, {"Столбец17", type text}, {"Столбец18", Int64.Type}, {"Столбец19", type text}, {"Столбец20", Int64.Type}, {"Столбец21", type text}, {"Столбец22", Int64.Type}, {"Столбец23", type text}, {"Столбец24", Int64.Type}, {"Столбец25", type text}, {"Столбец26", Int64.Type}, {"Столбец27", type text}, {"Столбец28", Int64.Type}, {"Столбец29", type text}, {"Столбец30", type any}, {"Столбец31", type text}, {"Столбец32", Int64.Type}, {"Столбец33", type text}, {"Столбец34", Int64.Type}, {"Столбец35", type text}, {"Столбец36", type any}, {"Столбец37", type text}, {"Столбец38", type any}, {"Столбец39", type text}, {"Столбец40", Int64.Type}}),
    #"Транспонированная таблица" = Table.Transpose(#"Измененный тип"),
    spl=Table.Split(#"Транспонированная таблица",2),
    #"Преобразовано в таблицу" = Table.FromList(spl, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Добавлен пользовательский объект" = Table.AddColumn(#"Преобразовано в таблицу", "Пользовательский", each Table.Transpose([Column1])),
    #"Развернутый элемент Пользовательский" = Table.ExpandTableColumn(#"Добавлен пользовательский объект", "Пользовательский", {"Column1", "Column2"}, {"Column1.1", "Column2"}),
    #"Удаленные столбцы" = Table.RemoveColumns(#"Развернутый элемент Пользовательский",{"Column1"}),
    #"Строки с примененным фильтром" = Table.SelectRows(#"Удаленные столбцы", each ([Column1.1] <> null))
in
    #"Строки с примененным фильтром"
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Ил Боч, здравствуйте
С таким примером не хочется связываться + нет желаемого результата
Изменено: Jack Famous - 02.12.2022 13:21:48
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Для Excel 365:
=СОРТ(СВЕРНСТРОК(ПОСТРОК(A2:AN36);2))

Изменено: Бахтиёр - 02.12.2022 13:45:28
 
Цитата
написал:
Power Query
я ни разу не пользовался этим инструментом, расскажите подробнее куда нужна внести этот код ?
 
https://www.youtube.com/watch?v=-Vo6IcV5-HE
 
Добрый день

А если транспонировать, устроит? Во 2ой вкладке
 
вариант
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    tableToRows = List.Buffer( Table.ToRows( Source ) ),
    listTransform_A = List.Transform( tableToRows, (x) => List.Alternate(x, 1, 1, 1) ),
    listTransform_B = List.Transform( tableToRows, (x) => List.Alternate(x, 1, 1) ),

    tableFromColumns =
        Table.FromColumns(
            { List.Combine(listTransform_A), List.Combine(listTransform_B) },
            {"Артикул", "Остаток"}
        ),
    tableSelectRows = Table.SelectRows(tableFromColumns, (x) => x[Артикул] <> null)
in
    tableSelectRows
Изменено: te1n - 09.12.2022 03:09:56
 
еще вариант:
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    a = Table.AddColumn(Source, "q", Record.ToList)[q],
    b = Table.FromList(List.Split(List.Combine(a), 2), (x)=>x)
in
    b
Страницы: 1
Наверх