在excel

时间:2017-04-27 16:47:23

标签: excel excel-formula spreadsheet

我有一个大型数据集,我正在使用excel工作,我想知道是否可以在excel中以更有效的方式执行此操作。

例如,我在excel中有一个关系行。每个单元格都是它之后的单元格的父级,以及它之前的子级到单元格。我试图打破这一行中的每一行,如下所示。有任何想法吗 ?我不确定excel是否能够做到这一点。

Relationship row    X1  X2  X3  X4  X5

    Child Column    Parent Column   
        X1                X2        
        X2                X3        
        X3                X4        
        X4                X5        

3 个答案:

答案 0 :(得分:0)

您可以使用Child Column:
=IF(ROW($A1)<MAX(COLUMN($A$1:$E$1)),INDEX($A$1:$E$1,SMALL(COLUMN($A$1:$E$1),ROW($A1))),"")
数组公式同时按 Ctrl + Shift + 输入 您的数据位于第1行并从A1开始 对于父列:
=IFERROR(INDEX($A$1:$E$1,SMALL(COLUMN($A$1:$E$1),ROW($A2))),"")
数组公式同时按 Ctrl + Shift + 输入 您可以向下拖动两个公式以获得所有结果

答案 1 :(得分:0)

如果你的关系行是第1行,从A列开始,你的&#34;子列&#34;和#34;父列&#34;分别从A4B4开始,您可以使用这些公式并向下拖动:

子栏目:=INDIRECT(ADDRESS(1,MAX(ROW()-3,1)))
父列:=INDIRECT(ADDRESS(1,MAX(ROW()-2,1)))

enter image description here

当然,如果没有更多信息,您可以说=If([formula]=0,"",[formula])隐藏0

答案 2 :(得分:0)

两个简单的公式,

子:

=OFFSET($A$1,0,ROW(A1))

父:

=OFFSET($A$1,0,ROW(A2))

enter image description here

在整个范围内拖动它们。