返回列表 上一主題 發帖

[發問] 請教國別筆數之計算

本帖最後由 Hsieh 於 2010-10-1 08:08 編輯

E2=SUMPRODUCT(ISNUMBER(FIND($D2,OFFSET($A$1,,,COUNTA($A:$A),)))*1)
學海無涯_不恥下問

TOP

回復 3# oobird


    應該很慘
學海無涯_不恥下問

TOP

回復 5# 偉婕

能有這麼好的速度嗎?
這應該是只判斷FIND字串是否存在
所以每個國名只需做7千多次判斷
可見內建陣列函數運算應該藏著比VBA更低階的語言
學海無涯_不恥下問

TOP

=SUMPRODUCT(ISNUMBER(FIND($D2,OFFSET($A$1,,,COUNTA($A:$A),)))*1)-(SUMPRODUCT(ISNUMBER(FIND($D2,OFFSET($D$1,,,COUNTA($D:$D),)))*1)-1)
學海無涯_不恥下問

TOP

回復 10# 偉婕
這公式確實有漏洞
如果D欄的國別在A欄不只出現一次就出錯了
再想想看除了VBA還有其他甚麼方法可以完全比對
學海無涯_不恥下問

TOP

991002-1.rar (12.95 KB)
定義名稱x=OFFSET(Sheet2!$A$1,,,COUNTA(Sheet2!$A:$A))
陣列公式{=SUM(IF((LEFT(SUBSTITUTE(x,D2,""))=";")+(RIGHT(SUBSTITUTE(x,D2,""),2)="; ")+(ISNUMBER(FIND("; ;",(SUBSTITUTE(x,D2,"")))))+(SUBSTITUTE(x,D2,"")=""),1,0))}
學海無涯_不恥下問

TOP

        靜思自在 : 人的眼睛長在前面,只看到別人的缺點,絲毫看不到自己的缺點。
返回列表 上一主題