根据唯一标识符

时间:2018-03-20 06:39:30

标签: excel excel-formula

我有以下格式的excel表。

锶。编号第1栏(X)第2栏(Y)第3栏(Z)

1 X Y Z
2 Y Z
3 Y
4 X Y
5 X

我想在MS Excel中以下列格式转换它。

锶。编号值
1 X
1 Y
1 Z
2 Y
2 Z
3 Y
4 X
4 Y
5 X

实际数据包含30多列,需要转换为2列。 请指导我。

2 个答案:

答案 0 :(得分:0)

如果您使用的是其他数据库,则可能有正式的无法运行的操作员/功能。但在MySQL中,这不可能。但是,这里应该采用的一种方法是将三列结合起来:

SELECT 1 AS sr_no, col1 AS value WHERE col1 IS NOT NULL
UNION ALL
SELECT 2, col2 WHERE col2 IS NOT NULL
UNION ALL
SELECT 3, col3 WHERE col3 IS NOT NULL
ORDER BY sr_no;

答案 1 :(得分:0)

  1. 选择完整的表格数据,然后使用

    将其命名为SourceData
      

    公式>名称管理员

  2. 现在实现以下公式获取第一列:

  3. =INDEX(SourceData,CEILING(ROWS($A$1:A1)/(COLUMNS(SourceData)-1),1),1)

    第二栏:

    =INDEX(SourceData,CEILING(ROWS($A$1:A1)/(COLUMNS(SourceData)-1),1),MOD(ROWS($A$1:A1)-1,COLUMNS(SourceData)-1)+2)

    1. 复制并粘贴特殊值,然后删除空格/零。
    2. 您将根据需要获得结果。