手機如何做表格:點選檢視
在平時工作中,我們經常會用到求和,這種問題對於大家來說是再簡單不過的,使用SUM函數就可以解決:
有時候可能會隱藏幾行資料,這時候求和就要用到SUBTOTAL這個函數了。在沒有隱藏的時候,SUBTOTAL函數結果與SUM函數計算的結果一致,如下:
一旦我們將其中的某幾行(如第3、6、9、12行)資料隱藏起來,結果就發生了變化,如下:
注意SUBTOTAL函數的第一個引數使用109就是表示忽略隱藏行的求和。
關於SUBTOTAL這個函數,之前發表過教學,有興趣的朋友可以去看看歷史文章。
今天我們要討論的問題不是忽略隱藏行如何求和,而是忽略隱藏列如何求和。首先要明確一點,SUBTOTAL這個函數是做不到這一點的,在函數的幫助裡說的很清楚:
不但SUBTOTAL函數做不到,就目前來說, Excel還沒有可以忽略隱藏列進行求和的函數。那麼對於這種需求該如何處理呢?這要用到一個比較新鮮的函數——CELL函數來做輔助才行。
相信見過這個函數的朋友不多,會用這個函數的就更少,我們就先來簡單瞭解一下CELL函數是用來做什麼的。在單元格輸入=c就會看到這個函數的身影,選擇函數後,會出現一個簡單的解釋:
在這句話中,可以大致瞭解到CELL函數可以得到一個單元格的格式、位置等資訊。雙擊這個函數,會出現一些選項:
可以看到,函數有兩個引數,info_type和reference。第一個引數info_type,資訊型別,一共有12種,各種型別具體含義可以通過函數幫助瞭解:
對於這些資訊型別有興趣的朋友可以自己看看,它們都非常容易理解。今天重點要用到的是最後一個資訊型別"width",簡單來說就是列寬。
有些朋友可能已經想到了,如果列被隱藏的話其列寬就是0,到底是不是這樣,我們可以來試試看。公式的第一引數選擇"width",第二引數設為B1,表示要得到B1單元格的列寬(實際上就是B列的列寬)。在B16單元格輸入公式:=CELL(「width」,B1),然後將公式向右拉:
結果全部是8。我們可以試試調整個別列的寬度,再看看是否有變化:
當我們調整了寬度以後,結果還是8,難道是公式有問題嗎?
其實不是的,原因是CELL函數有點小脾氣,當單元格的格式發生變化以後(列寬就是一種格式)必須重新計算才能更新結果。重新計算有兩種方法,一是按F9功能鍵,二是雙擊任意單元格後回車。再來看看就發現結果已經更新了:
數位的大小的確與單元格的寬窄對應。講到這裡如何忽略隱藏的列求和,答案已經呼之欲出了:使用CELL函數得到列寬,再用SUMIF函數實施求和。I2單元格輸入公式為:=SUMIF($B$16:$G$16,">0",B2:G2),然後將公式向下拉。
在沒有隱藏的時候,就是全部求和,現在我們隱藏幾列看看效果:
隱藏後記得要按F9或者雙擊一下哦。
問題到這裡似乎該結束了,可是總有些夥伴不太樂意用輔助列(輔助行),就想用陣列公式來實現,例如:=SUMPRODUCT((CELL("width",B1:G1>0)*B2:G2)
想法似乎很有道理,但是這樣做是不行的,因為如果引數 reference 是某一單元格區域,則函數 CELL 只將該資訊返回給該區域左上角的單元格。也就是說,雖然寫了B1:G1這樣一個區域,但是得到的只是B1的列寬。
是不是覺得cell這個函數的脾氣挺怪的~~~
實際上這個函數還有很多有趣的用法,如果你想知道的話,在下面留言吧!
相關學習推薦:
以上就是實用Excel技巧分享:怎麼忽略隱藏列進行求和?的詳細內容,更多請關注TW511.COM其它相關文章!