Excel 查找后隐去右边列

Excel 有几列数字


A B C
1 100 204 200
2 202 100 102
3 260 270 108
4 11 99 100
5 12 100 100

当给定参数时,请从每行找到该参数,隐去右边的列。如果某行不含该参数,则隐去整行。当参数是 100 时,结果如下:


A B C
7 100
8 202 100
9 11 99 100
10 12 100

使用 SPL XLL,输入公式:

=spl("=?1.(~.to(~.pselect(~==?2))).select(~!=[])",A1:C5,100)

Picture1png

函数 select 取符合条件的成员,pselect 取符合条件的成员位置,to 取前 N 个成员,~ 表示当前成员。

公式适用于行列有空缺或长度不定等数据不规范的情况。如果每行有多个 100,默认会隐去第 1 个 100 右边的列,如果想隐去最后一个 100 右边的列,可以使用 pselect@z。

https://stackoverflow.com/questions/78274564/excel-formulas-how-to-grab-only-cells-to-the-left-of-a-value