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

ffdz8vbo  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(83)

如何转置列并确保行相应地重复?
数据集包含以下数据:-
| 日期|年|月|天|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
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(Source, {"Date", "Year", "Month", "Day"}, "Attribute", "Value"),
    #"Changed Type" = Table.TransformColumnTypes(#"Unpivoted Other Columns",{{"Date", type date}}),
    #"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"Attribute", "Currency"}, {"Value", "Currency/CCY"}})
in
    #"Renamed Columns"

字符串
x1c 0d1x的数据

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



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



·单元格A6中使用的公式

=LET(
    _data, A1:G3,
    _matrixOne, TAKE(_data,,4),
    _matrixTwo, DROP(_data,,4),
    _headerOne, TAKE(_matrixOne,1),
    _headerTwo, TAKE(_matrixTwo,1),
    _bodyOne, DROP(_matrixOne,1),
    _bodyTwo, DROP(_matrixTwo,1),
    _diemn, ROWS(_bodyOne)*COLUMNS(_headerTwo),
    _rowDiemn, MOD(SEQUENCE(_diemn,,0),COLUMNS(_headerTwo))+1,
    _rowDiemx, INT((SEQUENCE(_diemn,,0))/COLUMNS(_headerTwo))+1,
    _transformHeader, INDEX(_headerTwo,_rowDiemn),
    _transformMatrixOne, INDEX(_bodyOne,_rowDiemx,SEQUENCE(1,COLUMNS(_matrixOne))),
    _transformMatrixTwo, INDEX(_bodyTwo,SEQUENCE(_diemn,,0)/COLUMNS(_headerTwo)+1,_rowDiemn),
    _topHeader, HSTACK(_headerOne,"Currency","Currency/CCY"),
    _bottomBody, HSTACK(_transformMatrixOne,_transformHeader,_transformMatrixTwo),
    VSTACK(_topHeader,_bottomBody))

相关问题