【问题标题】:Break a row into child and parent column in excel在excel中将一行分成子列和父列
【发布时间】:2017-04-27 16:47:22
【问题描述】:
我有一个大型数据集,我在 excel 中使用它,我想知道是否可以在 excel 中以更有效的方式执行此操作。
例如,我在 excel 中有一个关系行。每个单元格都是它之后的单元格的父单元,以及它之前的单元格的子单元。我试图打破这一行中的每一行,如下所示。有任何想法吗 ?我不确定excel是否能够做到这一点。
Relationship row X1 X2 X3 X4 X5
Child Column Parent Column
X1 X2
X2 X3
X3 X4
X4 X5
【问题讨论】:
标签:
excel
excel-formula
spreadsheet
【解决方案1】:
您可以用于子列:
=IF(ROW($A1)<MAX(COLUMN($A$1:$E$1)),INDEX($A$1:$E$1,SMALL(COLUMN($A$1:$E$1),ROW($A1))),"")
数组公式同时按Ctrl+Shift+Enter
您的数据位于第 1 行并从 A1 开始
父栏目:
=IFERROR(INDEX($A$1:$E$1,SMALL(COLUMN($A$1:$E$1),ROW($A2))),"")
数组公式同时按Ctrl+Shift+Enter
您可以将两个公式向下拖动以获得所有结果
【解决方案2】:
如果您的关系行是第 1 行,从 A 列开始,并且您的“子列”和“父列”分别从 A4 和 B4 开始,您可以使用这些公式并向下拖动:
子栏目:=INDIRECT(ADDRESS(1,MAX(ROW()-3,1)))
父栏目:=INDIRECT(ADDRESS(1,MAX(ROW()-2,1)))
当然,当没有更多信息时,您可以说 =If([formula]=0,"",[formula]) 来隐藏 0。
【解决方案3】:
两个简单的公式,
孩子:
=OFFSET($A$1,0,ROW(A1))
家长:
=OFFSET($A$1,0,ROW(A2))
在整个范围内拖动它们。