Excel 交叉表的格转成列,行转成格
Excel里交叉表的左表头是卡车号,上表头是工作,交叉格是工作编号。
A |
B |
C |
D |
|
1 |
Truck Number |
Job1 |
Job2 |
Job3 |
2 |
71 |
5928 |
5928 |
5928 |
3 |
72 |
3958 |
5928 |
2971 |
4 |
73 |
2971 |
5928 |
2971 |
要求:将交叉格转为列,左表头转为格。
A |
B |
C |
|
1 |
2971 |
3958 |
5928 |
2 |
72 |
72 |
71 |
3 |
73 |
71 |
|
4 |
73 |
71 |
|
5 |
72 |
||
6 |
73 |
使用 SPL XLL
=spl("=E@p(?.news(~.m(2:);~:T,get(1):S).group(T;~.(S(1)).sort():TS).(T|TS))",A2:D4)
news可按序列生成多条记录,~.m(2:) 表示从当前成员 ~ 的第 2 个子成员取到最后。get(1) 取上一级循环的成员。函数 E@p() 转置序列。
凑个热闹…
英文版