日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Excel高級函數(shù)也可以循環(huán)之:REDUCE函數(shù)

 zonge 2025-02-10 發(fā)布于湖北

REDUCE函數(shù)也是一個(gè)神奇的函數(shù)。

REDUCE函數(shù)的執(zhí)行首先隱形攜帶一個(gè)“累加器”。在REDUCE函數(shù)執(zhí)行的過程中,對給定數(shù)組或區(qū)域進(jìn)行循環(huán),依次處理每個(gè)元素和累加器,這里的處理是自定義的,可以是數(shù)值的加減乘除,可以是文本的連接,或者其他Excel函數(shù)處理的邏輯。最終函數(shù)的返回值就是累加器。

它的參數(shù)是這樣的:

=REDUCE ([initial_value],array, lambda(accumulator, value, calculation))

其中:

initial_value - 累加器的初值,

array - 需要循環(huán)處理的數(shù)組或區(qū)域

lambda - 自定義處理方式

accumulator - lambda函數(shù)的變量,代表累加器,

value - lambda函數(shù)的變量,代表循環(huán)中的數(shù)組元素,

calculation - 表達(dá)式,代表對元素和累計(jì)器處理的方式,比如寫成accumulator+value就表示將每一個(gè)數(shù)組元素加到累加器上。

例如,公式:

=REDUCE(0,B3:C5,LAMBDA(acc,a,a+acc))

就是循環(huán)B3:C5區(qū)域,將每個(gè)單元格的值加到累計(jì)器中,累加器的初值為0。(其實(shí),就是對B3:C5區(qū)域求和)。

假設(shè)B3:C5區(qū)域是這樣的:

圖片

上面公式的計(jì)算過程如下所示:

圖片

下面我們通過兩個(gè)例子說明REDUCE函數(shù)的用法。

例1. 條件求和

我們有下面的一列數(shù)據(jù):

圖片

要求計(jì)算其中的偶數(shù)和。

乍看上去,這好像可以用SUMIF等函數(shù)解決,其實(shí)這是辦不到的。使用REDUCE函數(shù)就可以:

=REDUCE(0,B2:B16,LAMBDA(acc,a,IF(ISEVEN(a),a+acc,acc)))

在這個(gè)公式中,我們通過LAMBDA函數(shù)的最后一個(gè)參數(shù)來自定義循環(huán)處理的方式:將偶數(shù)加到累加器中。

這個(gè)問題也可以用SUMPRODUCT等函數(shù)解決,但是REDUCE提供了更加靈活的處理方案。而且,除了數(shù)值外,REDECUE函數(shù)還可以處理文本。

例2. 連接小寫字母

假設(shè),我們有下列數(shù)據(jù):

圖片

需要你將其中的小寫字母連接起來,成為一個(gè)字符串。

可以使用下面的公式:

=REDUCE("",B2:B16,LAMBDA(acc,a,IF(CODE(a)>=97,acc&a,acc)))

這個(gè)公式中,首先我們注意到累計(jì)器初值為"",當(dāng)用REDUCE處理文本時(shí),我們一般設(shè)其初值為"";其次,對數(shù)組元素的處理方式不是數(shù)組計(jì)算,而是文本連接:&,將每個(gè)滿足條件的數(shù)組元素連接到累加器后面。

這里的條件是

CODE(a)>97

這是判斷一個(gè)字母是否小寫的方式。


詳細(xì)解釋請看視頻:

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多