最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

辦公效率提升的得力助手! WPS新增函數(shù)REDUCE基礎(chǔ)應(yīng)用詳解

  發(fā)布時(shí)間:2025-08-28 10:08:31   作者:佚名   我要評(píng)論
WPS作為常用的辦公軟件,不斷推陳出新,其新增的函數(shù)功能為用戶帶來(lái)了極大的便利,特別是REDUCE函數(shù)是這次新增這些函數(shù)中一個(gè)非常強(qiáng)大的存在,下面我們就來(lái)看看這個(gè)函數(shù)的使用方法

WPS新增了一系列函數(shù),新增的這一系列函數(shù),讓W(xué)PS在處理表格數(shù)據(jù)時(shí),大大提高了工作效率和處理表格數(shù)據(jù)的能力,特別是REDUCE函數(shù)是這次新增這些函數(shù)中一個(gè)非常強(qiáng)大的存在。下面列舉一些例子來(lái)分享REDUCE函數(shù)的基本用法,希望給大家?guī)?lái)一些學(xué)習(xí)REDUCE函數(shù)的幫助。

一、REDUCE函數(shù)概念及語(yǔ)法

REDUCE函數(shù)通過將LAMBDA函數(shù)應(yīng)用到每個(gè)值并返回累加器中的總值將數(shù)組減小為累計(jì)值。它既可以循環(huán)返回單值,也可以將每步循環(huán)的結(jié)果顯示出來(lái),在實(shí)際應(yīng)用中,疊加數(shù)組、變換表格樣式等場(chǎng)景下應(yīng)用非常多。思路上能用循環(huán)每個(gè)元素進(jìn)行運(yùn)算然后將結(jié)果堆疊起來(lái)解決的問題,差不多都可以考慮REDUCE函數(shù)。

WPS表格中,REDUCE函數(shù)的語(yǔ)法如下:

REDUCE(初始值,數(shù)組,函數(shù)),通過將LAMBDA函數(shù)應(yīng)用到每個(gè)值并返回累加器中的總值將數(shù)組減小為累計(jì)值。

在實(shí)際應(yīng)用中REDUCE函數(shù)語(yǔ)法:

REDUCE(初始值,數(shù)組,LAMBDA(x,y,計(jì)算公式)),第一參數(shù)為初始值,可以是單值也可以是數(shù)組;第二參數(shù)是要循環(huán)的數(shù)組,也可以只是用來(lái)控制循環(huán)次數(shù)的數(shù)組,REDUCE函數(shù)循環(huán)的次數(shù)由第二參數(shù)數(shù)組的元素?cái)?shù)量來(lái)決定;第三參數(shù)是LAMBDA函數(shù),確定第二參數(shù)需要執(zhí)行的運(yùn)算,并將運(yùn)算結(jié)果形成下一步運(yùn)算的初始值。x代表每次循環(huán)時(shí)的初始值,每次循環(huán)后更新(值不一定更新,可以判斷保留上步運(yùn)算值),y代表循環(huán)數(shù)組中的每個(gè)元素。當(dāng)然,也可以使用其他數(shù)字分別代表初始值和循環(huán)數(shù)組的元素。

REDUCE函數(shù)的第一個(gè)參數(shù)是累加器的起始值,第二個(gè)參數(shù)是循環(huán)的數(shù)組,接著是LAMBDA函數(shù)后面的兩個(gè)形式參數(shù),例如用x、y來(lái)表示,之后是計(jì)算公式。它的計(jì)算原理是:它把第二個(gè)參數(shù)數(shù)組中的第一個(gè)值傳遞給LAMBDA函數(shù)后面的形式參數(shù)y,進(jìn)行一個(gè)計(jì)算,之后再把計(jì)算的結(jié)果以某種方式存儲(chǔ)在累加器x中,之后再傳入第二參數(shù)數(shù)組中的第二個(gè)值進(jìn)行計(jì)算,然后與上一步累加器存儲(chǔ)的數(shù)據(jù)進(jìn)行運(yùn)算,再把運(yùn)算的結(jié)果存入累加器x,如此循環(huán)下去,直到第二參數(shù)數(shù)組中的所有數(shù)據(jù)都被遍歷完成,這樣函數(shù)的計(jì)算才停止下來(lái)。

二、下面通過一些常用場(chǎng)景的例子來(lái)說(shuō)明REDUCE函數(shù)的用法

1.下面公式可以把B2:B3單元格區(qū)域的數(shù)據(jù)拆分后堆疊為一列新的數(shù)據(jù):

公式:=REDUCE("",B2:B3,LAMBDA(x,y,VSTACK(x,TEXTSPLIT(y,,"、"))))

REDUCE函數(shù)是循環(huán)函數(shù),其中x和y分別代表第一參數(shù)和第二參數(shù)中的每一個(gè)值,LAMBDA函數(shù)運(yùn)算生成的結(jié)果作為循環(huán)后的新x。

以上例子,x的初始值是"",即空值,循環(huán)B2:B3單元格區(qū)域,VSTACK對(duì)x值進(jìn)行縱向堆疊。第一次循環(huán)x初始值是空值,y值是“張三豐、李四喜”,新x值為執(zhí)行TEXTSPLIT函數(shù)拆分后的數(shù)據(jù),即“張三豐”、“李四喜”兩行數(shù)據(jù)。第二次循環(huán)時(shí)x值為“張三豐”、“李四喜”兩行數(shù)據(jù),y值為“王小五、燕小六、沈七七”,新x值為執(zhí)行TEXTSPLIT函數(shù)拆分后的數(shù)據(jù),即“王小五”、“燕小六”、“沈七七”兩行數(shù)據(jù)。VSTACK函數(shù)對(duì)x的結(jié)果時(shí)行堆疊就得到了一列數(shù)據(jù)。

對(duì)合并數(shù)據(jù)展開,根據(jù)合并人員姓名,把組別和姓名分別展開:

公式:=REDUCE(A1:B1,B2:B3,LAMBDA(x,y,VSTACK(x,IFNA(HSTACK(OFFSET(y,,-1),TEXTSPLIT(y,,"、")),OFFSET(y,,-1)))))

對(duì)相同項(xiàng)合并,根據(jù)相同組別,合并姓名項(xiàng):

公式:=REDUCE(A1:B1,UNIQUE(A2:A6),LAMBDA(x,y,VSTACK(x,HSTACK(y,ARRAYTOTEXT(FILTER(B2:B6,A2:A6=y),0)))))

對(duì)相同項(xiàng)合并,根相同組別,合姓名項(xiàng),同時(shí)在前面加序號(hào):

公式:=REDUCE(HSTACK("序號(hào)",A1:B1),UNIQUE(A2:A6),LAMBDA(x,y,VSTACK(x,HSTACK(ROWS(x),y,ARRAYTOTEXT(FILTER(B2:B6,A2:A6=y),0)))))

2.例如,下面公式可以給連續(xù)相同的數(shù)據(jù)編號(hào),REDUCE函數(shù)當(dāng)次循環(huán)時(shí)可以引用上次循環(huán)后的x值:

公式:=REDUCE({"數(shù)據(jù)","序號(hào)"},A2:A15,LAMBDA(x,y,VSTACK(x,HSTACK(y,IF(y=TAKE(x,-1,1),TAKE(x,-1,-1)+1,1)))))

REDUCE函數(shù)第二參數(shù)A2:A15是循環(huán)的次數(shù),IF(y=TAKE(x,-1,1),TAKE(x,-1,-1)+1,1)是判斷當(dāng)前x最后一行的第一個(gè)元素是不是等于當(dāng)前循環(huán)的y,如果相等,則用當(dāng)前x最后一行的第二個(gè)元素+1,否則就是另外一組的新開始,就重新編號(hào)1。然后得到上面的結(jié)果之后,用HSTACK函數(shù)將當(dāng)前的y和編號(hào)橫向連接在一起。最后用VSTAK函數(shù)將x和當(dāng)前行生成的數(shù)組連接起來(lái)。也就是在當(dāng)前循環(huán)運(yùn)算時(shí),可以充分引用和利用已經(jīng)生成的x值,例如判斷某個(gè)數(shù)據(jù)已經(jīng)出現(xiàn)的次數(shù),可以用SUM(N(y=x))這種去判斷。

返回連續(xù)姓名值的金額匯總:

公式:=REDUCE({"姓名","合計(jì)"},A2:A9,LAMBDA(x,y,IF(@TAKE(x,-1)=y,VSTACK(DROP(x,-1),HSTACK(y,SUM(TAKE(x,-1))+OFFSET(y,,1))),VSTACK(x,OFFSET(y,,,,2)))))

以下是,對(duì)上面應(yīng)用場(chǎng)景的變形:

公式:=REDUCE("",A2:A7,LAMBDA(x,y,LET(s,@TAKE(x,-1),t,s=y,VSTACK(DROP(x,-t),IF(t,HSTACK(OFFSET(y,,,,4),TAKE(x,-1,-1)+1),HSTACK(OFFSET(y,,,,4),1))))))

3.根據(jù)指定次數(shù),生成重復(fù)值:

公式:=REDUCE(A1,B2:B5,LAMBDA(x,y,VSTACK(x,REPTARRAY(OFFSET(y,,-1),y))))

公式:=REDUCE(A1:B1,B2:B5,LAMBDA(x,y,VSTACK(x,HSTACK(IFNA(EXPAND(OFFSET(y,,-1),y),OFFSET(y,,-1)),SEQUENCE(y)))))

4.金額拆分,對(duì)合并人員匯總金額拆分到每個(gè)人:

公式:=REDUCE(B1:C1,B2:B3,LAMBDA(x,y,VSTACK(x,LET(t,TEXTSPLIT(y,,"、"),s,OFFSET(y,,1)/ROWS(t),IFNA(HSTACK(t,s),s)))))

對(duì)以上例了,升級(jí)匯總相同姓名的合計(jì)數(shù):

公式:=REDUCE(B1:C1,B2:B5,LAMBDA(x,y,LET(v,VSTACK(x,LET(t,TEXTSPLIT(y,,"、"),s,OFFSET(y,,1)/ROWS(t),IFNA(HSTACK(t,s),s))),GROUPBY(TAKE(v,,1),TAKE(v,,-1),SUM,3,0))))

5.相同產(chǎn)品不同單價(jià),匯總求和:

公式:=REDUCE(G1:J1,A4:A6,LAMBDA(x,y,VSTACK(x,LET(s,(A4:A6=y)*B3:E3*B4:E6,HSTACK(SUBSTITUTE(y,"銷量",),SUM(s),MAP(B2:C2,LAMBDA(z,SUM((B2:E2=z)*s))))))))

6.字符串的逆轉(zhuǎn),即數(shù)據(jù)前后位置互換

公式:=REDUCE("",MID(A1,SEQUENCE(LEN(A1)),1),LAMBDA(x,y,y&x))

7.字符串替換

公式:=TEXTSPLIT(REDUCE(CONCAT(A2:A6&","),B2:B4,LAMBDA(x,y,SUBSTITUTE(x,y&",",))),,",",1)

8.對(duì)數(shù)據(jù)去重后進(jìn)行統(tǒng)計(jì)

公式:=REDUCE(A2:B2,UNIQUE(A3:A12),LAMBDA(x,y,VSTACK(x,HSTACK(y,ROWS(UNIQUE(FILTER(A3:B12,A3:A12=y)))))))

9.多個(gè)工作表,每個(gè)工作表里有唯一查找值,查找引用

公式:=REDUCE(0,ROW(1:3)&"月",LAMBDA(x,y,x+IFERROR(VLOOKUP(A2,INDIRECT(y&"!A:B"),2,0),"")))

REDUCE函數(shù)是WPS新增的一個(gè)強(qiáng)大又實(shí)用函數(shù),它的應(yīng)用場(chǎng)景是很廣泛的,以上僅是部分基礎(chǔ)應(yīng)用案例。

推薦閱讀:excel新函數(shù)REDUCE來(lái)了! Excel中REDUCE函數(shù)使用詳解和相關(guān)案例

相關(guān)文章

最新評(píng)論

灯塔市| 东乌| 亚东县| 西昌市| 连山| 象山县| 江津市| 沾化县| 奉贤区| 西峡县| 青州市| 黔西| 东丽区| 特克斯县| 文水县| 墨玉县| 呼伦贝尔市| 万州区| 兰坪| 宝兴县| 绥江县| 景谷| 视频| 北碚区| 青浦区| 龙陵县| 宁陵县| 青龙| 化州市| 南宫市| 玉林市| 连平县| 曲沃县| 白玉县| 东方市| 绍兴县| 纳雍县| 台湾省| 台州市| 马鞍山市| 湄潭县|