一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Excel列表數(shù)據(jù)處理:另類篩選 - Excel函數(shù)式編程

 ExcelEasy 2024-07-19 發(fā)布于北京


繼續(xù)介紹列表數(shù)據(jù)處理。

在Excel中,如果我們需要列出列表中滿足條件的記錄,可以使用FILTER函數(shù),比如:

=FILTER(A2:A6,A2:A6<>"b")

篩選的就是第一列數(shù)據(jù)中不等于b的那些元素。

這個函數(shù)提供了很大的便利。但是有一點麻煩的地方,那就是我們必須了解需要篩選的結(jié)構(gòu),因為在定義條件時你必須知道是對哪個具體區(qū)域定義的,也就是說,在第二個參數(shù)追蹤必須包含完整的條件區(qū)域,比如,

A2:A6<>"b"

在實際工作中場景中,我們運用篩選時,可能未必對其中數(shù)據(jù)的內(nèi)部框架結(jié)構(gòu)了解得那么清楚。因此,在定義條件時,我們更愿意不去涉及具體區(qū)域。

上面的篩選需求,如果要使用文字描述的話,我們可以這么說:

篩選區(qū)域中那些不等于“b”的元素。

這里,我們使用那些代表需要設(shè)置條件的區(qū)域,這就規(guī)避了對區(qū)域的引用。

實際上,在Power Query的M語言中,就有一個LIST.SELECT函數(shù),使用的就是類似的方案。

我們今天就在Excel中實現(xiàn)這個功能。

簡單方案

我們的方案相當(dāng)簡單,使用一個自定義函數(shù)表示篩選條件:

select_func(x)

這里的x就是我們在上文中的“那些”,然后循環(huán)檢查待篩選列表中的每一個元素,如果符合返回true,否則,返回false。

這樣我們就可以得到一個邏輯值數(shù)組。

用這個數(shù)組對列表進行篩選即可。

實現(xiàn)代碼很簡單:

/** 選取滿足條件的元素*/myFilter = LAMBDA(list, select_func,    LET(        cond, MAP(list, LAMBDA(            a, select_func(a)        )),        FILTER(list, cond)    )
這里,我們使用了MAP函數(shù)對列表進行循環(huán)。
調(diào)用示例

下面是一個調(diào)用的例子

=myFilter(A2:A6, LAMBDA(x, x <> "b"))

使用多個條件,

=myFilter(A2:A6, LAMBDA(x, AND(x <> "b", x <>"a")))
討論

現(xiàn)在的實現(xiàn)方案中,我們使用MAP函數(shù)循環(huán)列表數(shù)據(jù)。

這就導(dǎo)致這個篩選函數(shù)只能用于單列數(shù)據(jù)。如果有多列數(shù)據(jù),就不能滿足我們的期望。

此時,就需要使用其他循環(huán)函數(shù)了。

    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    麻豆最新出品国产精品| 亚洲一区二区三区在线免费| 亚洲中文字幕高清乱码毛片 | 91人妻人澡人人爽人人精品| 国产精品视频第一第二区| 国产一级特黄在线观看| 成人综合网视频在线观看| 久久亚洲成熟女人毛片| 中文字幕日韩欧美亚洲午夜| 欧美偷拍一区二区三区四区| 亚洲男人的天堂就去爱| 国产亚洲精品香蕉视频播放| 日韩成人中文字幕在线一区| 丝袜av一区二区三区四区五区| 亚洲国产精品久久精品成人| 欧美午夜一区二区福利视频| 99久久精品午夜一区二区| 亚洲超碰成人天堂涩涩| 亚洲视频一区二区久久久| 91免费一区二区三区| 最近中文字幕高清中文字幕无| 91福利视频日本免费看看| 日韩中文字幕欧美亚洲| 久久国产亚洲精品赲碰热| 国产亚洲成av人在线观看| 久久综合日韩精品免费观看| 九九热国产这里只有精品| 日韩国产亚洲欧美激情| 国产欧美日韩精品一区二区| 亚洲最大福利在线观看| 日韩精品视频免费观看| 国产精品亚洲二区三区| 久热99中文字幕视频在线| 91偷拍与自偷拍精品| 加勒比日本欧美在线观看| 国产三级不卡在线观看视频| 精品综合欧美一区二区三区| 在线观看视频成人午夜| 久久免费精品拍拍一区二区| 免费在线观看欧美喷水黄片| 国产日韩欧美专区一区|