excel图表将所有数字分别提取到不同的单元格( 四 )


转换为:
=SUM(SMALL({1;FALSE;3;4;FALSE;FALSE;FALSE;8;FALSE;10;FALSE;FALSE;FALSE;14;15;FALSE;17;18;FALSE;20;FALSE;FALSE;FALSE;FALSE},2*COLUMNS($A:A)+{-1,0})*{-1,1})
上面生成的数组中的数值代表着字符串中从非数字到数字或者从数字到非数字的位置 。
现在,需要指定SMALL函数的参数k,当我们向右拖拉公式时可以提取一对相应位置的数字 。第一对是第1和第2个值,即1和3;第二对是第3和第4个值,即4和8;依此类推 。然后,由每一对中第2个值减去第1个值得到想要的长度 。因此,在B1中,公式可转换为:
=SUM(SMALL({1;FALSE;3;4;FALSE;FALSE;FALSE;8;FALSE;10;FALSE;FALSE;FALSE;14;15;FALSE;17;18;FALSE;20;FALSE;FALSE;FALSE;FALSE},2*1+{-1,0})*{-1,1})
转换为:
=SUM(SMALL({1;FALSE;3;4;FALSE;FALSE;FALSE;8;FALSE;10;FALSE;FALSE;FALSE;14;15;FALSE;17;18;FALSE;20;FALSE;FALSE;FALSE;FALSE},{1,2})*{-1,1})
转换为:
=SUM({1,3}*{-1,1})
转换为:
=SUM({-1,3})
得到:
2
我们将上面的中间结果代入单元格B1的公式:
=IFERROR(0+MID(“α”&$A1,2,2),””)
转换为:
=IFERROR(0+MID(“α81;8.75>@5279@4.=45>A?A;”,2,2),””)
转换为:
=IFERROR(0+”81″,””)
结果为:
81
【excel图表将所有数字分别提取到不同的单元格】值得一提的是,这个公式也适用于提取任何字母数混合的字符串中的数字 。虽然平时从字符串中提取多个连续的数字的需求并不常见,但该技术仍然值得细细研究 。

推荐阅读