国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
【Excel】多項目中指定項目金額求和函數(shù)解法~~

Word技巧達人推薦搜索
Word課程
Word表格
段落
郵件合并
樣式
圖表

今天我們來看一個求和的問題,數(shù)據(jù)源和模擬結果如下:

這個小伙伴觀察數(shù)據(jù),發(fā)現(xiàn)消費券都是在最后的,故把數(shù)據(jù)源中的消費券提取出來了。他想對消費券的金額求和,模擬結果如C列所示。

函數(shù)解法 01

這個小伙伴用的是WPS,故我們可以考慮直接使用EVALUATE。

EVALUATE:對以文字表示的一個公式或表達式求值,并返回結果。

語法:EVALUATE(值)

如果在office里敲=EVALUATE,不會出現(xiàn),需要定義名稱。

定義名稱方法:公式——定義名稱,在引用位置寫上公式,名稱框寫入名字即可。

用EVALUATE對消費券的金額求和,那么肯定需要類似于300+30的算式。觀察以后發(fā)現(xiàn)每個數(shù)字的前面都有消費券:,故我們用SUBSTITUTE(B2,'消費券:','')將消費券:替換掉,然后這個單元格里面就會有逗號分隔的數(shù)字,我們可以再用一次SUBSTITUTE把逗號替換為+,這樣我們用EVALUATE就可以求和了。因為原本的B2有錯誤,我們可以用iferror排錯。公式如下:

=IFERROR(EVALUATE(SUBSTITUTE(SUBSTITUTE(B2,'消費券:',''),',','+')),0)

<左右滑動查看更多>

效果如下圖:

當然,我們可以把B列的公式套進上面,這樣就不需要輔助列了。

=IFERROR(EVALUATE(SUBSTITUTE(SUBSTITUTE(RIGHT(A2,LEN(A2)-FIND('消費券:',A2,1)+1),'消費券:',''),',','+')),0)

<左右滑動查看更多>

效果如下:

函數(shù)解法 02

觀察要求和的數(shù)據(jù),我們發(fā)現(xiàn)都是按照,消費券:來分開的,故我們可以考慮用函數(shù)分列的套路。分列的套路在另一篇文章中會提到,這里簡單提一下。

此函數(shù)的意思是在分隔符號加上單元格字符長度的單元格,然后再根據(jù)列號逐個取出字符,然后再去掉空格。

舉個例子,此處C12有8個字符,故我們把空格重復8次。

從第1位開始取8位,這樣就會取出67        (67后面跟6個空格),然后把空格去了就是第一個數(shù)67了。

從第9位開始取8位,這樣就會取出  45     (45后面跟4個空格),然后把空格去了就是第二個數(shù)45了。

從第17位開始取8位,這樣就會取出  45     (45后面跟4個空格),然后把空格去了就是第二個數(shù)45了。

介紹完分列的套路,我們可以用分列的核心(即MID(SUBSTITUTE($C2,'*',REPT(“ “,LEN($C2))),(COLUMN(A1)-1)*LEN($C2)+1,LEN($C2)))來解決這個問題。

為了方便,我們把A列中的,消費券:替換為99個空格。由于我們不知道需要分多少次,大概看一下發(fā)現(xiàn)沒有超過10組的,故我們可以構建一個1到9的數(shù)組(即最多根據(jù),消費券:分9次)和99相乘。分了之后因為MID取出來的是文本,故變?yōu)閿?shù)值之后相加即可

故完整公式如下:

=SUMPRODUCT(IFERROR(--MID(SUBSTITUTE(A2,',消費券:',REPT(“ “,99)),ROW($1:$9)*99-98,99),0))

<左右滑動查看更多>

效果如下圖:

函數(shù)解法 03

在解法2的基礎上,我們發(fā)現(xiàn)text函數(shù)可以屏蔽錯誤,故考慮下面的公式。

=SUMPRODUCT(--TEXT(MID(SUBSTITUTE(A2,',消費券:',REPT(CHAR(32),99)),ROW($1:$9)*99-98,99),'[>];;0;!0'))

<左右滑動查看更多>

(提示:[>];;0;!0可以屏蔽錯誤,在此不解釋。Text取出的是個文本,故需要加--變?yōu)閿?shù)值。CHAR(32)就是空格。)

0.31

效果如下圖:

注:上述解法均適用于消費券都在后面的情況,否則會如下圖所示計算錯誤:

這個數(shù)據(jù)源沒有這種情況。這種情況解法1不成立,解法2和解法3我們需要把消費券:和,分開替換,即

=SUMPRODUCT(IFERROR(--MID(SUBSTITUTE(SUBSTITUTE(A2,'消費券:',REPT(' ',99)),',',REPT(' ',99)),ROW($1:$9)*99-98,99),0))

<左右滑動查看更多>

=SUMPRODUCT(--TEXT(MID(SUBSTITUTE(SUBSTITUTE(A2,'消費券:',REPT(' ',99)),',',REPT(' ',99)),ROW($1:$9)*99-98,99),'[>];;0;!0'))

<左右滑動查看更多>


PQ解法

如果你使用Excel 2016、2019和365版,恭喜你,你能在數(shù)據(jù)-新建查詢里找到power query;如果你使用2010和2013版,那么你需要下載power query后加載到Excel里;如果你使用2003和2007版,那么請你升級Excel吧;如果你使用WPS任意版本,那么請換Excel來使用power query吧。

以下為oldman大佬的PQ解法分享~

let 源 = Excel.CurrentWorkbook(){[Name='表1']}[Content], Process = Table.AddColumn(源,'n',(x)=> [a = List.Select(Text.Split(x[收款方式],','),each Text.Contains(_,'消費券')), b = List.Transform(a,each Number.From(Text.Remove(_,Text.ToList('消費券:')))), c = List.Sum(b) ][c] ), RemovCol = Table.RemoveColumns(Process,{'收款方式'})in    RemovCol

<左右滑動查看更多>

代碼使方法:

Step 01: 單擊【數(shù)據(jù)】選項卡 - 選擇【自表格/區(qū)域】命令;

Step 02:數(shù)據(jù)加載到PQ編輯器后,單擊【高級編輯器】;

Step 03:粘貼上方代碼,單擊確定完成。

好啦今兒分享到這里,祝大家好運!

喜歡的同鞋請轉發(fā)、點贊!


掃描下方二維碼,加入微信交流群~

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
有一個Excel函數(shù)叫:省時一整天,你卻連我的名字都不知道…
【Excel問伊答39】截取最后一個減號后的文本
函數(shù)運用到這種境界讓您佩服【Excel分享】
最后邊那位同學,來蹭課的吧?
Excel函數(shù):提取最后一個(符號)'/'后的字符
小個頭卻大能量,他默默無聞卻作用重大。他是?
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服