我有一个这样的数据集:
a 1 2 3 5 6 7
b 5 1 3 4
c 7 4 3 2 6
d 1 2 3 7
e 7 5 5 6 7
我想在excel中进行转换,以便仅显示每行的最后4个数字值,即
a 3 5 6 7
b 5 1 3 4
c 4 3 2 6
d 1 2 3 7
e 5 5 6 7
我已经设法使用=INDEX(row1,MATCH(9.99999999999999E+307,row1))
正确地返回了最后一个值(在这种情况下,第1行为7),但是我怎么能获得倒数第二,第三,第四等等呢?
答案 0 :(得分:1)
在A1中使用a
,在M1中横向复制以适合:
=MID(RIGHT($B1&$C1&$D1&$E1&$F1&$G1&$H1&$I1&$J1,4),COLUMN()-12,1)
然后隐藏ColumnsB:L。
(如图所示,仅适用于个位数。最新版本的Excel可能提供更好的选择。)
答案 1 :(得分:0)
因此,我设法弄清楚了如何对任意数字进行此操作:
说您的原始数字数据在单元格D5:N9
中。
可选:
如果任何数据行包含相同的值两次,请在单元格D13:N17
中创建一个副本,该副本通过使用D13
并拖动以填充来稍微修改重复项
=IF(D5="","",D5+0.0001*(COUNTIF($D5:D5,D5)-1))
然后在单元格A13:A17
中输入值13
,14
,15
,16
,17
并在单元格A20:A29
中输入值D
,E
,F
,G
,H
,I
,{{1} },J
,K
,L
在单元格M
中,您可以使用以下命令返回行D20
中的最后一个值:
13
并向下复制每一行。
在单元格=LOOKUP(9.99999999E+307,D13:N13)
中,您可以使用返回第二个最后一个条目
E20
并将其向下复制到每一行,并将其拖到=LOOKUP(9.99999999E+307,$D13:INDIRECT(CONCATENATE(INDEX($A$20:$A$29,MATCH(D20,$D13:$N13,0)-1),$A13)))
上,以填充每一行的最后3个,最后4个和最后5个的所有值。