如何使用填充句柄在Excel INDEX公式中增加行值?
我有一个Excel表和两列A和B.示例数据如下:
ColA ColB Name Elmo Address1 125 Sesame Street Address2 Disney land, Fl 85381 Name Elsa Address1 35 Frozen island Address2 Disney land, Fl 85381 Address3 USA
等等的一些logging。 我想用索引公式将这些信息转换为:
Name Address1 Address2 Address3 Elmo 125 Sesame Street Disneyland, Fl 85381 Elsa 35 Frozen island Disneyland, Fl 85381 USA
使用Excel的copy
和paste-special
, transpose
将是太费时,因为有很多logging。 我列出了标题,并使用D2=INDEX($B$1:$B$927,1)
作为值。 我想使用填充手柄横向拖动它,行号从1增加到2到3等
谢谢你的build议。
select一个单元格并input:
=OFFSET($B$1,COLUMNS($B:B)-1+(ROWS($1:1)-1)*3,0)
然后跨越和下来复制:
假设你的结果表有Name,Address1,Address2作为头文件,你可以在每个文件中使用行号。
名称下的单元格可以有以下公式: =INDEX($B$2:$B$17,ROW()*3-5)
Add1下的单元格可以有这样的公式: =INDEX($B$2:$B$17,ROW()*3-4)
Add2下的单元格可以有这样的公式: =INDEX($B$2:$B$17,ROW()*3-3)
(作为图中列H,I,J中的值仅用于说明目的。
示例Excel截图
这是一个不同的答案,因为:所述问题的要求与以前的答案不同。
作为第一步,您需要添加一个“名称计数器” – 这标识了您的数据中存在多less独特的人。 我已经添加了数据左侧的A列。 A2中的第一个值是1。 在A3中,公式是=IF(B3="Name",A2+1,A2)
。 这可以一直拖到数据的末尾。 (见截图)
在你的结果表中,你将不得不同样地添加一个从1开始的名称计数器列到唯一的名字条目。 这是我的示例表中的列E(见截图)
在您的结果表中input最左上angular单元格的公式(在我的示例中,这是单元格F2)是{=INDEX($C$2:$C$25,MATCH($E2&F$1,$A$2:$A$25&$B$2:$B$25,0))}
。
由于这是一个数组公式,请在您的单元格中input=INDEX($C$2:$C$25,MATCH($E2&F$1,$A$2:$A$25&$B$2:$B$25,0))
对应我的F2,然后Ctrl
+ Shit
+ Enter
input公式。 Excel会自动将大括号括起来,并将其标识为数组计算。
您可以将此公式粘贴到其余的单元格中。 (因为它是一个粘贴公式的数组公式将不起作用,因此只能将它粘贴到空单元格中。)
(A,B,C – 数据; E,F,G,H – 公式; J,K,L,M –