将列中的 MS Excel 数据拆分为行
Unstacking MS Excel data in columns to rows
我手头有一个小挑战,我尝试过 pivot table,并在 Google 的帮助下完成了这个 activity。但是我已经看到了一个模式中非常 structured/organized 数据的解决方案。我面临的挑战如下。
table1 中的数据,由 2 列组成。第 1 列“部件号”第 2 列对应的是“供应商零件号”。给定的零件号在第 1 列中可能有多个供应商部件号。在第 2 列中,因为它们由不同的供应商提供(每个供应商都有自己的零件号命名约定)。
我想做的是,零件编号。我们的希望有所有相应的供应商零件号。在不同列的同一行中(基本上拆开它?)
为了更清楚,请参阅附件。
分解挑战解释:
数据table:
如果有人能指导我就太好了!
Part No.
Supplier Part No.
Supplier Name
ABC12345
AB36062653
Supplier no. 1
FGHHJK8765
4-514903600
Supplier no. 1
HGD5
196032821-03
Supplier no. 1
GHJJ677
430662322-AA
Supplier no. 1
SDFG3456
01-103622307
Supplier no. 1
ABC12345
38707105_01
Supplier no. 2
DFG4567
ab403649756
Supplier no. 2
GHJJ677
7R-412929801
Supplier no. 2
HGD5
00-357031751
Supplier no. 2
SDFG3456
509806089-4A
Supplier no. 2
SDFG3456
TYR488316651
Supplier no. 3
HGD5
99804219BJK
Supplier no. 3
DFG4567
389816712jk
Supplier no. 3
ABC12345
CB361990766
Supplier no. 3
ABC12345
RRR519537923BB
Supplier no. 4
ABC12345
FNKG485505159
Supplier no. 5
DFG4567
BB16633987UUU
Supplier no. 4
DFG4567
204272737GH_01
Supplier no. 5
FGHHJK8765
E168552849K
Supplier no. 4
FGHHJK8765
gh_01_124784471
Supplier no. 5
SDFG3456
65610572JFJD
Supplier no. 5
HGD5
214258608KMCFK
Supplier no. 4
GHJJ677
YTUYJ372430994
Supplier no. 4
GHJJ677
HDJSFHDJ-524930743
Supplier no. 5
鉴于您的数据设置,在 Power Query 中这是一个没有聚合的简单数据透视操作。
M代码
将第 2 行中的 table 姓名更改为您的真实 table 姓名
let
Source = Excel.CurrentWorkbook(){[Name="Table8_2"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{
{"Part No.", type text}, {"Supplier Part No.", type text}, {"Supplier Name", type text}}),
#"Pivoted Column" = Table.Pivot(#"Changed Type", List.Distinct(#"Changed Type"[#"Supplier Name"]),
"Supplier Name", "Supplier Part No.")
in
#"Pivoted Column"
结果:
在支持动态数组公式的Excel版本中,您可以使用这个
单元格H7
=YourTableName[[#Headers],[Part No.]]
单元格H8
=SORT(UNIQUE(YourTableName[Part No.]))
单元格I7
=TRANSPOSE(SORT(UNIQUE(YourTableName[Supplier Name]))))
CellI8
=XLOOKUP(H8#&"_"&I7#,YourTableName[Part No.]&"_"&YourTableName[Supplier Name],YourTableName[Supplier Part No.],"",0,1)`
我手头有一个小挑战,我尝试过 pivot table,并在 Google 的帮助下完成了这个 activity。但是我已经看到了一个模式中非常 structured/organized 数据的解决方案。我面临的挑战如下。
table1 中的数据,由 2 列组成。第 1 列“部件号”第 2 列对应的是“供应商零件号”。给定的零件号在第 1 列中可能有多个供应商部件号。在第 2 列中,因为它们由不同的供应商提供(每个供应商都有自己的零件号命名约定)。
我想做的是,零件编号。我们的希望有所有相应的供应商零件号。在不同列的同一行中(基本上拆开它?)
为了更清楚,请参阅附件。
分解挑战解释:
数据table:
如果有人能指导我就太好了!
Part No. | Supplier Part No. | Supplier Name |
---|---|---|
ABC12345 | AB36062653 | Supplier no. 1 |
FGHHJK8765 | 4-514903600 | Supplier no. 1 |
HGD5 | 196032821-03 | Supplier no. 1 |
GHJJ677 | 430662322-AA | Supplier no. 1 |
SDFG3456 | 01-103622307 | Supplier no. 1 |
ABC12345 | 38707105_01 | Supplier no. 2 |
DFG4567 | ab403649756 | Supplier no. 2 |
GHJJ677 | 7R-412929801 | Supplier no. 2 |
HGD5 | 00-357031751 | Supplier no. 2 |
SDFG3456 | 509806089-4A | Supplier no. 2 |
SDFG3456 | TYR488316651 | Supplier no. 3 |
HGD5 | 99804219BJK | Supplier no. 3 |
DFG4567 | 389816712jk | Supplier no. 3 |
ABC12345 | CB361990766 | Supplier no. 3 |
ABC12345 | RRR519537923BB | Supplier no. 4 |
ABC12345 | FNKG485505159 | Supplier no. 5 |
DFG4567 | BB16633987UUU | Supplier no. 4 |
DFG4567 | 204272737GH_01 | Supplier no. 5 |
FGHHJK8765 | E168552849K | Supplier no. 4 |
FGHHJK8765 | gh_01_124784471 | Supplier no. 5 |
SDFG3456 | 65610572JFJD | Supplier no. 5 |
HGD5 | 214258608KMCFK | Supplier no. 4 |
GHJJ677 | YTUYJ372430994 | Supplier no. 4 |
GHJJ677 | HDJSFHDJ-524930743 | Supplier no. 5 |
鉴于您的数据设置,在 Power Query 中这是一个没有聚合的简单数据透视操作。
M代码
将第 2 行中的 table 姓名更改为您的真实 table 姓名
let
Source = Excel.CurrentWorkbook(){[Name="Table8_2"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{
{"Part No.", type text}, {"Supplier Part No.", type text}, {"Supplier Name", type text}}),
#"Pivoted Column" = Table.Pivot(#"Changed Type", List.Distinct(#"Changed Type"[#"Supplier Name"]),
"Supplier Name", "Supplier Part No.")
in
#"Pivoted Column"
结果:
在支持动态数组公式的Excel版本中,您可以使用这个
单元格H7
=YourTableName[[#Headers],[Part No.]]
单元格H8
=SORT(UNIQUE(YourTableName[Part No.]))
单元格I7
=TRANSPOSE(SORT(UNIQUE(YourTableName[Supplier Name]))))
CellI8
=XLOOKUP(H8#&"_"&I7#,YourTableName[Part No.]&"_"&YourTableName[Supplier Name],YourTableName[Supplier Part No.],"",0,1)`