二維碼 購(gòu)物車
部落窩在線教育歡迎您!

賬目中文字和數(shù)據(jù)記錄在一起怎么求和?

?

作者:Excel應(yīng)用之家來源:部落窩教育發(fā)布時(shí)間:2020-10-27 17:36:11點(diǎn)擊:3336

分享到:
0
收藏    收藏人氣:0人
版權(quán)說明: 原創(chuàng)作品,禁止轉(zhuǎn)載。
編按:

有些單位部分賬目不夠規(guī)范,譬如報(bào)銷表,報(bào)銷內(nèi)容中文字和金額數(shù)據(jù)是記錄在一起的,怎么求和得到報(bào)銷金額呢?通常的做法是需要增加一列,把數(shù)據(jù)單獨(dú)提取出來,然后進(jìn)行求和。當(dāng)然也可以用公式一步到位直接求和。

 

數(shù)據(jù)求和原本很簡(jiǎn)單,可是如果數(shù)據(jù)錄入不規(guī)范,譬如賬目中的文字和數(shù)據(jù)記錄在一起,那求和就復(fù)雜了!請(qǐng)看下面的例子。這是一個(gè)簡(jiǎn)單的流水賬,費(fèi)用內(nèi)容文字和具體金額是記錄在一個(gè)單元格內(nèi)的,現(xiàn)在我們要計(jì)算出總的消費(fèi)金額。

 

 

如何求和呢?常規(guī)操作,是先建立輔助列把金額數(shù)據(jù)提取出來,然后進(jìn)行求和。

數(shù)據(jù)提取,大家的第一反應(yīng)可能是用Ctrl+E。然而此處,用Ctrl+E會(huì)遇到問題,因?yàn)橛行?shù)和負(fù)數(shù)存在。下圖是用Ctrl+E的效果,存在錯(cuò)誤:

 

 

當(dāng)前數(shù)據(jù)少,我們可以Ctrl+E后再手動(dòng)修改個(gè)別錯(cuò)誤數(shù)據(jù)。

如果數(shù)據(jù)有成百上千條呢?顯然我們需要另外的方法來處理。

 

一、用公式提取數(shù)據(jù),然后再求和

 

我們一起來分析這組數(shù)據(jù)的特點(diǎn)??偨Y(jié)后有以下幾點(diǎn):

l  數(shù)據(jù)和文本混合,文本全部為漢字,沒有字母。

l  每個(gè)單元格中只包含了一個(gè)數(shù)據(jù)。

l  存在小數(shù)和負(fù)數(shù)。

l  在數(shù)據(jù)(含負(fù)號(hào)在內(nèi))前后沒有其他單字節(jié)字符。

l  數(shù)據(jù)在字符串中所在位置不同,也沒有規(guī)律。

l  數(shù)據(jù)的字符長(zhǎng)度不固定。

 

針對(duì)以上的幾個(gè)特點(diǎn),我們可以考慮使用MIDB函數(shù)、SEARCHB函數(shù)來提取數(shù)字。

在單元格C2中輸入“=--MIDB(B2,SEARCHB("?",B2),2*LEN(B2)-LENB(B2))”并向下拖曳即可。

 

 

 

公式思路和函數(shù)解釋:

把數(shù)據(jù)從字符串中提取出來就是一個(gè)文本提取操作。當(dāng)前的難點(diǎn)是每個(gè)單元格中數(shù)據(jù)開始提取的位置和長(zhǎng)度不固定。從前面的分析中,我們得到一個(gè)可以利用的規(guī)律:在數(shù)據(jù)(含負(fù)號(hào)在內(nèi))前后沒有其他單字節(jié)字符這條規(guī)律的價(jià)值在于,單字節(jié)字符部分就是我們需要的數(shù)據(jù)(含負(fù)號(hào))。那只要能用函數(shù)自動(dòng)獲取每個(gè)單元格中單字節(jié)字符的開始位置和長(zhǎng)度,一切問題就解決了。

l  MIDB函數(shù)是根據(jù)指定字節(jié)數(shù)提取文本。

它與我們常用的MID函數(shù)用法一致,唯一的區(qū)別就是:MID根據(jù)字符數(shù)來提取文本,MIDB根據(jù)字節(jié)數(shù)來提取文本。

l  SEARCHB函數(shù)用于解決從哪里開始提取文本。

SEARCHB函數(shù)是查找第一個(gè)字符串在第二個(gè)字符串中的起始位置。它返回的起始位置用字節(jié)數(shù)表示。

SEARCHB("?",B2)表示在B2單元格(第二個(gè)字符串)中查找第一個(gè)單字節(jié)(“?”)字符的字節(jié)位置。其中“?”在本處表示任意單字節(jié)字符。SEARCHB("?",B2)實(shí)際查找的就是數(shù)字6(它是B2單元格中第一個(gè)單字節(jié)字符)在B2中的位置。在公式中選中SEARCHB("?",B2)F9,可以看到返回結(jié)果是7。

這部分函數(shù)公式幫我們解決了從哪里開始提取文本。

l  2*LEN(B2)-LENB(B2)這部分函數(shù)公式解決了文本的提取長(zhǎng)度。

LEN(B2)統(tǒng)計(jì)的是B2單元格字符串的字符數(shù);LENB(B2)統(tǒng)計(jì)的是B2單元格字符串的字節(jié)數(shù)。兩倍字符數(shù)減去字節(jié)數(shù)就可以得到單元格中單字節(jié)字符的字節(jié)數(shù),對(duì)本例來說就是得到數(shù)據(jù)的字節(jié)數(shù)。

 

現(xiàn)在,數(shù)字提取出來了,最后再利用SUM函數(shù)求和即可。

 

二、直接用一個(gè)公式完成求和

 

這次我們來增加一些難度。要求在一個(gè)單元格內(nèi)直接用公式求出總費(fèi)用。

在單元格D2中輸入“=SUM(--MIDB($B$2:$B$10,SEARCHB("?",$B$2:$B$10),2*LEN($B$2:$B$10)-LENB($B$2:$B$10)))”,三鍵回車(Shfit+Ctrl+Enter)即可。

 

 

公式思路和函數(shù)解釋:

要直接用SUM求和,那就必須讓MIDB函數(shù)返回一組數(shù)而不是單個(gè)的值。因此我們把上一個(gè)公式中的B2更換成了B2:B10,再套入到SUM函數(shù)中,輸入完畢按三鍵回車。

 

好了,以上就是今天分享給大家的內(nèi)容,希望朋友們都可以掌握。

這個(gè)案例,大家可以學(xué)到的技能和教訓(xùn):

l  技能:混合文本中的單字節(jié)字符都是一個(gè)數(shù)據(jù)時(shí)的數(shù)據(jù)提取與求和方法

l  教訓(xùn):不規(guī)范錄入將增加工作難度

 

本文配套的練習(xí)課件請(qǐng)加入QQ群:264539405下載。

Excel高手,快速提升工作效率,部落窩教育《一周Excel直通車》視頻和《Excel極速貫通班》直播課全心為你!

掃下方二維碼關(guān)注公眾號(hào),可隨時(shí)隨地學(xué)習(xí)Excel

IMG_256

相關(guān)推薦:

提取數(shù)字的萬能公式:Excel數(shù)字提取技巧:從包含文字的單元格中提取所有數(shù)字的萬能公式

SUM求和高階用法:SUM函數(shù)的進(jìn)階用法:快速對(duì)交叉區(qū)域、應(yīng)收款項(xiàng)、小計(jì)行求和!

最簡(jiǎn)單的條件求和函數(shù):DSUM,最簡(jiǎn)單的條件求和函數(shù)!你知道不?

按顏色求和:Excel教程:Excel根據(jù)單元格填充顏色求和的三種方法