如何在excel中将列转置为行并相应地确保行的重复?

ffdz8vbo  于 2023-11-20  发布在  其他
关注(0)|答案(1)|浏览(111)

如何转置列并确保行相应地重复?
数据集包含以下数据:-
| 日期|年|月|天|USD| EUR| JPY|
| --|--|--|--|--|--|--|
| 一九九四年一月一日| 1994 | 1 | 1 | 10 | 20 | 5 |
| 一九九五年一月一日| 1995 | 1 | 1 | 12 | 30 | 10 |
预期输出为:-
| 日期|年|月|天|货币|货币/CCY|
| --|--|--|--|--|--|
| 一九九四年一月一日| 1994 | 1 | 1 |USD| 10 |
| 一九九四年一月一日| 1994 | 1 | 1 |EUR| 20 |
| 一九九四年一月一日| 1994 | 1 | 1 |JPY| 5 |
| 一九九五年一月一日| 1995 | 1 | 1 |USD| 12 |
| 一九九五年一月一日| 1995 | 1 | 1 |EUR| 30 |
| 一九九五年一月一日| 1995 | 1 | 1 |JPY| 10 |

oxf4rvwz

oxf4rvwz1#

使用POWER QUERY可以快速轻松地完成此操作。要使用上述程序实现此操作,请遵循以下步骤:

  • 首先将源范围转换为一个表,并相应地命名它,在本例中,我将其命名为Table1
  • 接下来,从数据选项卡-->获取和转换数据-->获取数据-->从其他来源-->空白查询中打开一个空白查询
  • 上面让Power Query窗口打开,现在从Home Tab --> Advanced Editor -->并通过删除您看到的任何内容粘贴以下M-Code,然后按Done
  1. let
  2. Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
  3. #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(Source, {"Date", "Year", "Month", "Day"}, "Attribute", "Value"),
  4. #"Changed Type" = Table.TransformColumnTypes(#"Unpivoted Other Columns",{{"Date", type date}}),
  5. #"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"Attribute", "Currency"}, {"Value", "Currency/CCY"}})
  6. in
  7. #"Renamed Columns"

字符串
x1c 0d1x的数据

  • 最后,要将其导入Excel -->单击关闭并加载或关闭并加载到-->第一个单击的将创建一个新工作表,其中包含所需的输出,而后者将提示一个窗口,询问您将结果放置在哪里。



或者,使用**Excel FormulasUNPIVOT OTHER COLUMNS**



·单元格A6中使用的公式

  1. =LET(
  2. _data, A1:G3,
  3. _matrixOne, TAKE(_data,,4),
  4. _matrixTwo, DROP(_data,,4),
  5. _headerOne, TAKE(_matrixOne,1),
  6. _headerTwo, TAKE(_matrixTwo,1),
  7. _bodyOne, DROP(_matrixOne,1),
  8. _bodyTwo, DROP(_matrixTwo,1),
  9. _diemn, ROWS(_bodyOne)*COLUMNS(_headerTwo),
  10. _rowDiemn, MOD(SEQUENCE(_diemn,,0),COLUMNS(_headerTwo))+1,
  11. _rowDiemx, INT((SEQUENCE(_diemn,,0))/COLUMNS(_headerTwo))+1,
  12. _transformHeader, INDEX(_headerTwo,_rowDiemn),
  13. _transformMatrixOne, INDEX(_bodyOne,_rowDiemx,SEQUENCE(1,COLUMNS(_matrixOne))),
  14. _transformMatrixTwo, INDEX(_bodyTwo,SEQUENCE(_diemn,,0)/COLUMNS(_headerTwo)+1,_rowDiemn),
  15. _topHeader, HSTACK(_headerOne,"Currency","Currency/CCY"),
  16. _bottomBody, HSTACK(_transformMatrixOne,_transformHeader,_transformMatrixTwo),
  17. VSTACK(_topHeader,_bottomBody))

展开查看全部

相关问题