合并發(fā)票號碼太難了,用公式想破腦,真心疼做會計的你原始數(shù)據(jù),合并后要這種效果,發(fā)票號碼不連續(xù)的用逗號隔開,連續(xù)的用小值和值分隔符號是橫杠。這種用公式真的想破腦,實(shí)在太麻煩了,用了好幾個輔助列才搞定。
今天,分享一個簡化版的,發(fā)票號碼只有一個或者連續(xù)的,這種就好處理很多。
現(xiàn)在分步說明:
如果供應(yīng)商只有一個,就返回單個發(fā)票號碼。用COUNTIF判斷次數(shù)。
IF(COUNTIF(A:A,A2)=1,B2,
如果供應(yīng)商多個,就返回對應(yīng)的個和后一個發(fā)票。個用VLOOKUP,后一個用LOOKUP。
VLOOKUP(A2,A:C,2,0)
LOOKUP(1,0/(A2=A:A),B:B)
將這幾個公式合并起來,結(jié)果是沒問題,不過只要在個供應(yīng)商顯示,其他顯示空白。
=IF(COUNTIF(A:A,A2)=1,B2,VLOOKUP(A2,A:C,2,0)&"-"&LOOKUP(1,0/(A2=A:A),B:B))
判斷首次出現(xiàn),可以用COUNTIF區(qū)域混合引用。
=COUNTIF(A$2:A2,A2)=1
不過這里有一個特點(diǎn),直接利用上下行內(nèi)容不一樣就可以。
=A2<>A1
再將所有公式結(jié)合起來就搞定。
=IF(A2<>A1,IF(COUNTIF(A:A,A2)=1,B2,VLOOKUP(A2,A:C,2,0)&"-"&LOOKUP(1,0/(A2=A:A),B:B)),"")
匯總金額這個很簡單,SUMIF條件求和就行。
=IF(A2<>A1,SUMIF(A:A,A2,C:C),"")
再順便說下,如果供應(yīng)商一樣,就將所有發(fā)票號碼全部用逗號隔開。
先用IF判斷供應(yīng)商是否一樣,如果一樣就返回發(fā)票號碼,否則返回空白。這是多單元格數(shù)組公式,并不能直接在一個單元格顯示結(jié)果。
=IF($A$2:$A$13=A2,$B$2:$B$13,"")
再用TEXTJOIN將結(jié)果合并起來,輸入公式后要按Ctrl+Shift+Enter結(jié)束。
=TEXTJOIN(",",1,IF($A$2:$A$13=A2,$B$2:$B$13,""))
再嵌套IF顯示在個單元格。
=IF(A2<>A1,TEXTJOIN(",",1,IF($A$2:$A$13=A2,$B$2:$B$13,"")),"")
簡化版的到這里就解決了,原始版的其實(shí)再多增加幾個條件就行,這里就不再說明,有興趣的可以動下腦子。