關于求和,,有很多種,一般情況我們經(jīng)常用的求和方式是:直接求和,,單條件求和,,多條件求和,今天EXCEL中國合伙人教你不一樣的求和,,讓你工作越來越輕松,,下面先看一下我們的效果圖 以下圖是知道供應商全稱數(shù)據(jù),現(xiàn)要用簡稱在全稱里面進行查找符合稱稱的項,,并累加起來,,如下圖:
在介紹前,,先了解一下ISNUMBER函數(shù),,此函數(shù)對單元格進行判斷是不是數(shù)值函數(shù),即:值為數(shù)字,。利用此函數(shù)的此特性對簡稱,,全稱作判斷單元格是否為數(shù)值,如果是則返回TRUE,,如果不是則返回FALSE 在了解一下FIND函數(shù),,即判斷位置函數(shù), FIND 函數(shù)語法具有下列參數(shù):
先介紹簡稱在全稱里取數(shù)累加 方法一:在單元格E3單元格輸入公式: {=SUM(ISNUMBER(FIND(D3,$A$3:$A$26))*$B$3:$B$26)} 數(shù)公式為數(shù)組公式,輸入完成后按CTRL SHIFT 回車,, 注:大括號不是輸上去的,,而是按三鍵后自動出來的 方法二:在單元格F3輸入如下公式(土豆哥版) =SUMIF(A:A,'*'&D3&'*',B:B) 此公式利用通配符“*”與簡稱連接后對單元格進行求和,通配符“*”代表所有字符,,在這里與簡稱連接后是代表簡稱兩邊的所有字數(shù),。輸入完以上公式后將得出以下結果圖: 下面介紹下全稱在簡稱中進行查找并累加 方法一:在單元格L3輸入如下公式: { =SUM(ISNUMBER(FIND($H$3:$H$26,K3))*$I$3:$I$26)} 剛好與前面的相反,效果一樣,,這就不解釋了,, 方法二:利用VBA代碼進行查找累加(土豆哥版) 代碼如下: Sub Test() '數(shù)據(jù)簡,求和全,,代碼 過程名稱 Test Sub 和 () 是固定語法 Dim X As Integer, Rng As Range '聲明變量 X 為 整形變量,,Rng 為 單元格對象變量 For X = 2 To 25 '循環(huán) x 從 2 到 25 Set Rng = Range('K:K').Find(Cells(X, 'H'), , , xlPart) '給對象變量賦值必須用 Set 'Find 函數(shù)返回 Range 類型的值 '在 K 列中查找(find)單元格 Cells(X, 'H') 的值,,,xlpart(不完全匹配) '總結:在K列中模糊查找 H列 X 行的值,并賦值給 Rng If Not Rng Is Nothing Then '如果 rng 是 什么都沒有 就 Cells(Rng.Row, 'M') = Cells(Rng.Row, 'M') Cells(X, 'I') '單元格 內部 顏色號 =3 PS:給單元格填充紅色 Else '否則 Cells(X, 'H').Interior.ColorIndex = 3 '單元格(找到的行,,M列)=單元格(找到的行,,M列) 加 單元格(X行,I列) '數(shù)據(jù)累加 End If Next End Sub '是對應塊語句所必須的結束語句 輸入公式和運行程序后,,得到如下效果圖,。 大功告成,動手試試吧,, 時時觀注EXCEL中國合伙人,,每天精彩不斷,請聽下回分解,,謝謝,。 |
|
來自: L羅樂 > 《數(shù)據(jù)匯總》