如下图,希望用公式得到“以分布式开始”的G列数据。
一、高版本公式
=FILTER(E2:E9,LEFT(E2:E9,3)="分布式")
用LEFT函数提取数据的左侧3个字符,是“分布式”的就是以它开始的数据了,用FILTER函数筛选出来即可。
二、低版本公式
如果excel版本不能使用FILTER函数,可以用以下公式:
=INDEX(E:E,SMALL(IF(LEFT($E$1:$E$99,3)="分布式",ROW($E$1:$E$99),99),ROW(A1)))&""
公式解析:
经典的INDEX+SMALL+IF+ROW组合。
IF(LEFT($E$1:$E$99,3)="分布式",ROW($E$1:$E$99),先提取数据左侧三个字符,如果是“分布式”,就返回它的行号,否则返回99,
然后用SMALL函数从小到大的返回符合条件的行号,作为INDEX的第二个参数,就得到了需要筛选的以“分布式”开始的数据。
公式中的99是个比较大的数,用于所有数据区域不超过99行,如果有可能大于99,就把它改大,如1000或10000,就可以了。