如下圖所示,Excel表格中A列的編碼有很多是超過15位的文本型數字,現在要對物料編碼前面是“36985214705850”的物料統計其采購量之和。

如果用常規的函數:
=SUMIF(A:A,D3,B:B)

求出的結果是0,顯然這個結果是錯誤的。因為只是按照物料編碼里的一部分進行條件求和,顯然SUMIF的第2參數不能只是物料編碼的前若干位。那么怎么處理呢:
=SUMIF(A:A,D3&"*",B:B)

注意上圖的D4單元格的物料編碼是完全的,如果用下面這樣的函數公式:
=SUMIF(A:A,D4,B:B),按道理是沒問題的。但是錯誤為100,我們核對發現這個結果是不對的。

經分析發現把如下圖紅框處的數字加和了,為什么加和這些呢。
只要物料編碼前面15位的數字是一樣的,sumif就把這些編碼對應的采購量加一起。為什么是15位呢,因為excel里能夠辨識的數字最長不能超過15位。

所以此處的公式應該改為:
=SUMIF(A:A,D4&"*",B:B)
