Преобразование таблицы (перенос из столбцов в строки)
Андрей_Саныч
Дата: Суббота, 01.10.2022, 21:38 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация:
0
±
Замечаний:
0% ±
Добрый день! Прошу помочь в следующей задаче: необходимо преобразовать таблицу со значениями по месяцам (горизонтально расположены) в таблицу с вертикальным расположением чисел. Наглядно упрощенный пример в прилагаемом файле. Сейчас реализуется через ряд ручных манипуляций, от которых хотелось бы максимально избавиться, т.к. данных много и они пополняются. Через сводные таблицы пока не дошло, как это попроще реализовать. Макросы исключаются, надстройки тоже. Спасибо!
Добрый день! Прошу помочь в следующей задаче: необходимо преобразовать таблицу со значениями по месяцам (горизонтально расположены) в таблицу с вертикальным расположением чисел. Наглядно упрощенный пример в прилагаемом файле. Сейчас реализуется через ряд ручных манипуляций, от которых хотелось бы максимально избавиться, т.к. данных много и они пополняются. Через сводные таблицы пока не дошло, как это попроще реализовать. Макросы исключаются, надстройки тоже. Спасибо! Андрей_Саныч
Ответить
Сообщение Добрый день! Прошу помочь в следующей задаче: необходимо преобразовать таблицу со значениями по месяцам (горизонтально расположены) в таблицу с вертикальным расположением чисел. Наглядно упрощенный пример в прилагаемом файле. Сейчас реализуется через ряд ручных манипуляций, от которых хотелось бы максимально избавиться, т.к. данных много и они пополняются. Через сводные таблицы пока не дошло, как это попроще реализовать. Макросы исключаются, надстройки тоже. Спасибо! Автор - Андрей_Саныч Дата добавления - 01.10.2022 в 21:38
прохожий2019
Дата: Суббота, 01.10.2022, 22:10 |
Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация:
327
±
Замечаний:
0% ±
365 Beta Channel
PQ [vba]Код
let from = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content], unpiv = Table.UnpivotOtherColumns(from, {"Статья", "Наименование"}, "Период", "Сумма"), to = Table.ReorderColumns(unpiv,{"Период", "Статья", "Наименование", "Сумма"}) in to
[/vba]
PQ [vba]Код
let from = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content], unpiv = Table.UnpivotOtherColumns(from, {"Статья", "Наименование"}, "Период", "Сумма"), to = Table.ReorderColumns(unpiv,{"Период", "Статья", "Наименование", "Сумма"}) in to
[/vba] прохожий2019
Ответить
Сообщение PQ [vba]Код
let from = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content], unpiv = Table.UnpivotOtherColumns(from, {"Статья", "Наименование"}, "Период", "Сумма"), to = Table.ReorderColumns(unpiv,{"Период", "Статья", "Наименование", "Сумма"}) in to
[/vba] Автор - прохожий2019 Дата добавления - 01.10.2022 в 22:10
Андрей_Саныч
Дата: Суббота, 01.10.2022, 22:16 |
Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация:
0
±
Замечаний:
0% ±
Боюсь, что PQ установить не выйдет на рабочем экселе из-за определенных ограничений
Боюсь, что PQ установить не выйдет на рабочем экселе из-за определенных ограниченийАндрей_Саныч
Ответить
Сообщение Боюсь, что PQ установить не выйдет на рабочем экселе из-за определенных ограниченийАвтор - Андрей_Саныч Дата добавления - 01.10.2022 в 22:16
прохожий2019
Дата: Суббота, 01.10.2022, 22:18 |
Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация:
327
±
Замечаний:
0% ±
365 Beta Channel
ну вы немножко забыли указать, что у вас 2013 или старее
ну вы немножко забыли указать, что у вас 2013 или старее прохожий2019
Ответить
Сообщение ну вы немножко забыли указать, что у вас 2013 или старее Автор - прохожий2019 Дата добавления - 01.10.2022 в 22:18
прохожий2019
Дата: Суббота, 01.10.2022, 22:23 |
Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация:
327
±
Замечаний:
0% ±
365 Beta Channel
а ещё немножко забыли про кросс
Ответить
Сообщение а ещё немножко забыли про кросс Автор - прохожий2019 Дата добавления - 01.10.2022 в 22:23
Egyptian
Дата: Суббота, 01.10.2022, 22:56 |
Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 526
Репутация:
193
±
Замечаний:
0% ±
Excel 2013/2016
ТАМ выложили решение формулами.
Ответить
Сообщение ТАМ выложили решение формулами.Автор - Egyptian Дата добавления - 01.10.2022 в 22:56
scriptapplications
Дата: Суббота, 01.10.2022, 23:16 |
Сообщение № 7
Группа: Проверенные
Ранг: Участник
Сообщений: 68
Репутация:
12
±
Замечаний:
0% ±
Андрей_Саныч, ПериодКод
=ИНДЕКС($D$3:$O$3;1;ЦЕЛОЕ((СТРОКА()-СТРОКА($F$25))/ЧСТРОК($D$4:$D$16))+1)
СтатьяКод
=ИНДЕКС(B$4:B$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1)
НаименованиеКод
=ИНДЕКС(C$4:C$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1)
СуммаКод
=ИНДЕКС(D$4:O$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1;ЦЕЛОЕ((СТРОКА()-СТРОКА($B$25))/ЧСТРОК($B$4:$B$16))+1)
Андрей_Саныч, ПериодКод
=ИНДЕКС($D$3:$O$3;1;ЦЕЛОЕ((СТРОКА()-СТРОКА($F$25))/ЧСТРОК($D$4:$D$16))+1)
СтатьяКод
=ИНДЕКС(B$4:B$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1)
НаименованиеКод
=ИНДЕКС(C$4:C$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1)
СуммаКод
=ИНДЕКС(D$4:O$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1;ЦЕЛОЕ((СТРОКА()-СТРОКА($B$25))/ЧСТРОК($B$4:$B$16))+1)
scriptapplications
Сообщение отредактировал scriptapplications - Суббота, 01.10.2022, 23:16
Ответить
Сообщение Андрей_Саныч, ПериодКод
=ИНДЕКС($D$3:$O$3;1;ЦЕЛОЕ((СТРОКА()-СТРОКА($F$25))/ЧСТРОК($D$4:$D$16))+1)
СтатьяКод
=ИНДЕКС(B$4:B$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1)
НаименованиеКод
=ИНДЕКС(C$4:C$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1)
СуммаКод
=ИНДЕКС(D$4:O$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1;ЦЕЛОЕ((СТРОКА()-СТРОКА($B$25))/ЧСТРОК($B$4:$B$16))+1)
Автор - scriptapplications Дата добавления - 01.10.2022 в 23:16
Андрей_Саныч
Дата: Суббота, 01.10.2022, 23:45 |
Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация:
0
±
Замечаний:
0% ±
Период =ИНДЕКС($D$3:$O$3;1;ЦЕЛОЕ((СТРОКА()-СТРОКА($F$25))/ЧСТРОК($D$4:$D$16))+1) Статья =ИНДЕКС(B$4:B$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1) Наименование =ИНДЕКС(C$4:C$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1) Сумма =ИНДЕКС(D$4:O$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1;ЦЕЛОЕ((СТРОКА()-СТРОКА($B$25))/ЧСТРОК($B$4:$B$16))+1)
Спасибо большое!!
Период =ИНДЕКС($D$3:$O$3;1;ЦЕЛОЕ((СТРОКА()-СТРОКА($F$25))/ЧСТРОК($D$4:$D$16))+1) Статья =ИНДЕКС(B$4:B$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1) Наименование =ИНДЕКС(C$4:C$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1) Сумма =ИНДЕКС(D$4:O$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1;ЦЕЛОЕ((СТРОКА()-СТРОКА($B$25))/ЧСТРОК($B$4:$B$16))+1)
Спасибо большое!!Андрей_Саныч
Ответить
Сообщение Период =ИНДЕКС($D$3:$O$3;1;ЦЕЛОЕ((СТРОКА()-СТРОКА($F$25))/ЧСТРОК($D$4:$D$16))+1) Статья =ИНДЕКС(B$4:B$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1) Наименование =ИНДЕКС(C$4:C$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1) Сумма =ИНДЕКС(D$4:O$16;ОСТАТ((СТРОКА()-СТРОКА($B$25));ЧСТРОК($B$4:$B$16))+1;ЦЕЛОЕ((СТРОКА()-СТРОКА($B$25))/ЧСТРОК($B$4:$B$16))+1)
Спасибо большое!!Автор - Андрей_Саныч Дата добавления - 01.10.2022 в 23:45
прохожий2019
Дата: Суббота, 01.10.2022, 23:51 |
Сообщение № 9
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация:
327
±
Замечаний:
0% ±
365 Beta Channel
одной формулой))) [vba]Код
=LET(h;D3:O3;n;D4:O16;t;B4:C16;i;ЧСТРОК(t);MAKEARRAY(СЧЁТ(n);4;LAMBDA(r;c;LET(m;ОСТАТ(r-1;i)+1;d;ОТБР((r-1)/i)+1;ВЫБОР(c;ИНДЕКС(h;d);ИНДЕКС(t;m;1);ИНДЕКС(t;m;2);ИНДЕКС(n;m;d))))))
[/vba]
одной формулой))) [vba]Код
=LET(h;D3:O3;n;D4:O16;t;B4:C16;i;ЧСТРОК(t);MAKEARRAY(СЧЁТ(n);4;LAMBDA(r;c;LET(m;ОСТАТ(r-1;i)+1;d;ОТБР((r-1)/i)+1;ВЫБОР(c;ИНДЕКС(h;d);ИНДЕКС(t;m;1);ИНДЕКС(t;m;2);ИНДЕКС(n;m;d))))))
[/vba] прохожий2019
Ответить
Сообщение одной формулой))) [vba]Код
=LET(h;D3:O3;n;D4:O16;t;B4:C16;i;ЧСТРОК(t);MAKEARRAY(СЧЁТ(n);4;LAMBDA(r;c;LET(m;ОСТАТ(r-1;i)+1;d;ОТБР((r-1)/i)+1;ВЫБОР(c;ИНДЕКС(h;d);ИНДЕКС(t;m;1);ИНДЕКС(t;m;2);ИНДЕКС(n;m;d))))))
[/vba] Автор - прохожий2019 Дата добавления - 01.10.2022 в 23:51
Андрей_Саныч
Дата: Воскресенье, 02.10.2022, 00:03 |
Сообщение № 10
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация:
0
±
Замечаний:
0% ±
=LET(h;D3:O3;n;D4:O16;t;B4:C16;i;ЧСТРОК(t);MAKEARRAY(СЧЁТ(n);4;LAMBDA(r;c;LET(m;ОСТАТ(r-1;i)+1;d;ОТБР((r-1)/i)+1;ВЫБОР(c;ИНДЕКС(h;d);ИНДЕКС(t;m;1);ИНДЕКС(t;m;2);ИНДЕКС(n;m;d))))))
Спасибо Вам! Хотелось бы применить формулу, но что-то эксель ругается, в частности на "LAMBDA(...". В чем секрет, что я не так делаю?
=LET(h;D3:O3;n;D4:O16;t;B4:C16;i;ЧСТРОК(t);MAKEARRAY(СЧЁТ(n);4;LAMBDA(r;c;LET(m;ОСТАТ(r-1;i)+1;d;ОТБР((r-1)/i)+1;ВЫБОР(c;ИНДЕКС(h;d);ИНДЕКС(t;m;1);ИНДЕКС(t;m;2);ИНДЕКС(n;m;d))))))
Спасибо Вам! Хотелось бы применить формулу, но что-то эксель ругается, в частности на "LAMBDA(...". В чем секрет, что я не так делаю?Андрей_Саныч
Ответить
Сообщение =LET(h;D3:O3;n;D4:O16;t;B4:C16;i;ЧСТРОК(t);MAKEARRAY(СЧЁТ(n);4;LAMBDA(r;c;LET(m;ОСТАТ(r-1;i)+1;d;ОТБР((r-1)/i)+1;ВЫБОР(c;ИНДЕКС(h;d);ИНДЕКС(t;m;1);ИНДЕКС(t;m;2);ИНДЕКС(n;m;d))))))
Спасибо Вам! Хотелось бы применить формулу, но что-то эксель ругается, в частности на "LAMBDA(...". В чем секрет, что я не так делаю?Автор - Андрей_Саныч Дата добавления - 02.10.2022 в 00:03
прохожий2019
Дата: Воскресенье, 02.10.2022, 00:08 |
Сообщение № 11
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация:
327
±
Замечаний:
0% ±
365 Beta Channel
не раскрываете информацию о том, какая у вас на самом деле версия - моя формула будет работать только в 365 офисе
не раскрываете информацию о том, какая у вас на самом деле версия - моя формула будет работать только в 365 офисе прохожий2019
Ответить
Сообщение не раскрываете информацию о том, какая у вас на самом деле версия - моя формула будет работать только в 365 офисе Автор - прохожий2019 Дата добавления - 02.10.2022 в 00:08
Андрей_Саныч
Дата: Воскресенье, 02.10.2022, 00:14 |
Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация:
0
±
Замечаний:
0% ±
не раскрываете информацию о том, какая у вас на самом деле версия - моя формула будет работать только в 365 офисе
Понял) Дома 2013 сейчас. Спасибо, в любом случае!
не раскрываете информацию о том, какая у вас на самом деле версия - моя формула будет работать только в 365 офисе
Понял) Дома 2013 сейчас. Спасибо, в любом случае!Андрей_Саныч
Ответить
Сообщение не раскрываете информацию о том, какая у вас на самом деле версия - моя формула будет работать только в 365 офисе
Понял) Дома 2013 сейчас. Спасибо, в любом случае!Автор - Андрей_Саныч Дата добавления - 02.10.2022 в 00:14