我跟隨this thread來計算具有特定顏色的所有單元格。Google表自定義函數返回0
在我的情況,green/lime/#00ff00/rgb(0,255,0)
:
我已經建立了我own sheet並試圖重新無功而返這些自定義的功能。
問題是無論我如何操作函數或單元格,函數總是返回0
而不是預期的計數14
。
本身getColor()
作品,但似乎在ArrayFormulat(SUM())
階段分解。
我跟隨this thread來計算具有特定顏色的所有單元格。Google表自定義函數返回0
在我的情況,green/lime/#00ff00/rgb(0,255,0)
:
我已經建立了我own sheet並試圖重新無功而返這些自定義的功能。
問題是無論我如何操作函數或單元格,函數總是返回0
而不是預期的計數14
。
本身getColor()
作品,但似乎在ArrayFormulat(SUM())
階段分解。
嘗試傳遞範圍爲字符串..是這樣的:
=ArrayFormula(sum(--(getColor("C2:C15")=rgb(0,255,0))))
如果你想用你的公式,請嘗試:
=sum(ArrayFormula(N(getColor(ADDRESS(ROW(C2),COLUMN(C2))&":"&ADDRESS(ROW(C15), COLUMN(C15))) = rgb(0,255,0))))
當然,最短的方法是:
=countif(getColor("C2:C15"), "#00ff00")
工作
我回答了我自己的問題。
使用COUNTIF()
而不是SUM()
函數是關鍵。 SUM()
適用於數值,而COUNTIF()
適用於表示顏色值的字符串。
所以這個:
=ArrayFormula(COUNTIF(getColor( ADDRESS(ROW(C2),COLUMN(C2))&":"&ADDRESS(ROW(C38), COLUMN(C38))), "#00ff00"))
,而不是
=ArrayFormula(SUM(getColor( ADDRESS(ROW(C2),COLUMN(C2))&":"&ADDRESS(ROW(C38), COLUMN(C38)))= rgb(0,255,0)))
感謝@JPV,但不幸的是它似乎像它應該是完全不是那麼回事。雖然它不是因爲getColor()函數,但又是因爲'ArrayFormula(sum('。你會嘗試隔離getColor()'然後'ArrayFormula(sum('在我看到的鏈接中看到我的意思是? – 2015-04-04 19:18:55
查看我更新的答案並檢查鏈接... :-) – JPV 2015-04-04 20:57:14