實用Excel技巧分享:怎麼忽略隱藏列進行求和?

2022-05-27 14:03:26
在之前的文章《》中,我們通過2個範例瞭解了「條件格式」和「函數公式」如果配合使用。而今天我們來聊聊資料求和,介紹一下忽略隱藏列進行求和的方法,快來學習學習!

手機如何做表格:點選檢視

在平時工作中,我們經常會用到求和,這種問題對於大家來說是再簡單不過的,使用SUM函數就可以解決:

1.png

有時候可能會隱藏幾行資料,這時候求和就要用到SUBTOTAL這個函數了。在沒有隱藏的時候,SUBTOTAL函數結果與SUM函數計算的結果一致,如下:

2.png

一旦我們將其中的某幾行(如第3、6、9、12行)資料隱藏起來,結果就發生了變化,如下:

3.png

注意SUBTOTAL函數的第一個引數使用109就是表示忽略隱藏行的求和。

關於SUBTOTAL這個函數,之前發表過教學,有興趣的朋友可以去看看歷史文章。

今天我們要討論的問題不是忽略隱藏行如何求和,而是忽略隱藏列如何求和。首先要明確一點,SUBTOTAL這個函數是做不到這一點的,在函數的幫助裡說的很清楚:

4.png

不但SUBTOTAL函數做不到,就目前來說, Excel還沒有可以忽略隱藏列進行求和的函數。那麼對於這種需求該如何處理呢?這要用到一個比較新鮮的函數——CELL函數來做輔助才行。

相信見過這個函數的朋友不多,會用這個函數的就更少,我們就先來簡單瞭解一下CELL函數是用來做什麼的。在單元格輸入=c就會看到這個函數的身影,選擇函數後,會出現一個簡單的解釋:

5.jpg

在這句話中,可以大致瞭解到CELL函數可以得到一個單元格的格式、位置等資訊。雙擊這個函數,會出現一些選項:

6.png

可以看到,函數有兩個引數,info_type和reference。第一個引數info_type,資訊型別,一共有12種,各種型別具體含義可以通過函數幫助瞭解:

7.png

對於這些資訊型別有興趣的朋友可以自己看看,它們都非常容易理解。今天重點要用到的是最後一個資訊型別"width",簡單來說就是列寬。

有些朋友可能已經想到了,如果列被隱藏的話其列寬就是0,到底是不是這樣,我們可以來試試看。公式的第一引數選擇"width",第二引數設為B1,表示要得到B1單元格的列寬(實際上就是B列的列寬)。在B16單元格輸入公式:=CELL(「width」,B1),然後將公式向右拉:

8.png

結果全部是8。我們可以試試調整個別列的寬度,再看看是否有變化:

9.png

當我們調整了寬度以後,結果還是8,難道是公式有問題嗎?

其實不是的,原因是CELL函數有點小脾氣,當單元格的格式發生變化以後(列寬就是一種格式)必須重新計算才能更新結果。重新計算有兩種方法,一是按F9功能鍵,二是雙擊任意單元格後回車。再來看看就發現結果已經更新了:

10.png

數位的大小的確與單元格的寬窄對應。講到這裡如何忽略隱藏的列求和,答案已經呼之欲出了:使用CELL函數得到列寬,再用SUMIF函數實施求和。I2單元格輸入公式為:=SUMIF($B$16:$G$16,">0",B2:G2),然後將公式向下拉。

11.png

在沒有隱藏的時候,就是全部求和,現在我們隱藏幾列看看效果:

12.png

隱藏後記得要按F9或者雙擊一下哦。

問題到這裡似乎該結束了,可是總有些夥伴不太樂意用輔助列(輔助行),就想用陣列公式來實現,例如:=SUMPRODUCT((CELL("width",B1:G1>0)*B2:G2)

想法似乎很有道理,但是這樣做是不行的,因為如果引數 reference 是某一單元格區域,則函數 CELL 只將該資訊返回給該區域左上角的單元格。也就是說,雖然寫了B1:G1這樣一個區域,但是得到的只是B1的列寬。

是不是覺得cell這個函數的脾氣挺怪的~~~

實際上這個函數還有很多有趣的用法,如果你想知道的話,在下面留言吧!

相關學習推薦:

以上就是實用Excel技巧分享:怎麼忽略隱藏列進行求和?的詳細內容,更多請關注TW511.COM其它相關文章!