非动态数组版本下的筛选
问题:一对多查找(筛选)的结果需要横向排列,但是表格暂时不支持动态数组。
右拉下拉公式解决:
{=IFERROR(INDEX(FILTER($E:$E,$D:$D=$G2),COLUMN(A1)),"")}
公式中的Filter部分筛选出满总D列中等产于G2对应E列的内容,其结果是多个单元格组成的数组。
使用Index提取数组中的内容,第二参数用Column(A1),右拉以后会变成序列数,以此依次提取Filter结果中的每一个。
当Filter结果的个数少于Index的第二参数时会产生错误值,需要用Iferror销错。
在支持动态数组的表格可以使用以下公式:
=TOROW(FILTER($E:$E,$D:$D=$G2))