私信回複關鍵詞【2020】~
獲取100 套高顔值圖表模闆!
這個世界繁花似錦,多姿多彩,五顔六色!
Excel 表格裡的顔色也不例外。
在表格中使用顔色看上去非常醒目,而且直觀,增加美感!
但是在表格中用顔色來标注一些單元格之後,如果要對這些加了顔色的單元格來求和(或者求平均,求最大值等等)。
就是一件比較棘手和麻煩的事了!
如圖:
(這裡隻是簡單的例舉了幾條數據,以方便講解。無論數據多少,方法都是類似的!)
如果不懂方法的話,那隻能一個單元格一個單元格的加總在一起,比如:
=sum(C2,C4,C6,C8)
或者要麼這樣:
=C2 C4 C6 C8
要麼手動輸入單元格地址,要麼用鼠标點選。
如果數據很多,不僅效率非常低下,而且還有可能會出錯,所以不推薦大家使用這種方法!
那麼有沒有其他的方法,可以快速而且準确的統計出有顔色的單元格中的值呢?
當然有,下面我們來看看 4 種按顔色求和的方法。
效率高,而且不易出錯!
01輔助列法推薦指數:★★★★★
難易程度:★☆☆☆☆
适用場景:顔色單一或者不多的情況下
适用版本:所有版本
這種方法不僅僅适用于顔色求和。
在很多場合下,都可以将問題或者函數公式簡化,從而化繁為簡,将不可能變成可能!
❶ 先對 C 列數據,按單元格顔色進行篩選,把有顔色的單元格篩選出來;
❷ 在 D 列添加一個輔助列,然後都寫上 1,如下圖:
❸ 取消篩選,把公式寫在 E1 單元格裡面,公式:
=SUMIF(D:D,1,C:C)
(這裡可以根據自己需要放在想要的單元格中。)
公式大概的意思是:
對條件區域 D 列,按照條件為數字 1 的單元格,對 C 列符合條件的單元格進行求和。
看上去還是挺簡單的吧。
PS:在輔助列輸入的内容,大家可以根據情況來錄入,方便識别就可以!比如:銷售組别 顔色等。
02查找與定義名稱法推薦指數:★★★★★
難易程度:★★☆☆☆
适用場景:顔色單一或者不多的情況下
适用版本:所有版本
運用兩種或者兩種以上方法相結合,也是化繁為簡一種非常好的思路。
❶ 按【Ctrl F】打開【查找和替換】對話框,點擊【格式】旁邊的黑色三角按鈕,點擊其中的【格式】。
此外有時也可以選擇【從單元格選擇格式】這個選項,但這兩種方法的結果可能不一樣。
比如有的單元格即加了顔色又設置了加粗,有的單元格卻沒有,會導緻統計結果不一樣,大家可以自行嘗試摸索下。
❷ 打開【查找格式】對話框,找到【填充】選項卡下面的顔色點擊下。
點選之後,會自動把顔色顯示到【預覽】處,如下圖:
❸ 點擊【查找全部】,選中其中一條數據,按【Ctrl A】全選有顔色的單元格;
然後在【名稱框】裡面輸入一個名稱,比如:我的名稱 1。
PS:當然在這裡也可以定義名稱為「綠色」,如果顔色有兩種或者以上的話,可以分别定義成實際的顔色名稱 備注。
❹ 在 E1 單元格寫入公式:
=SUM(我的名稱 1)
Sum 就是求和函數,對「我的名稱 1」這個名稱代表的多個單元格裡面的值求和。
這樣結果就出來了!
03宏表函數法
推薦指數:★★★★☆
難易程度:★★★☆☆
适用場景:顔色不限
适用版本:所有版本
宏表函數對于很多人來說,可能比較陌生。
大家在工作中接觸最多的是工作表函數,工作表函數可以直接在單元格中使用。
而宏表函數必須先定義一個名稱,然後就可以像工作表函數一樣在單元格中使用了。
❶ 選中有顔色單元格的旁邊的 D2 單元格,點擊【公式】→【定義名稱】打開【新建名稱】對話框;
(或者按【Ctrl F3】打開名稱管理器,也可以新建名稱。)
在【名稱】文本框中輸入「我的名稱 2」,【引用位置】輸入:
=GET.CELL(63,Sheet1!C2)
公式大概意思是:獲得單元格的填充顔色的值。
(參數 63 表示返回單元格的填充顔色的值。)
❷ 在 D2 單元格輸入公式:
=我的名稱 2
并向下填充到最後一個單元格 D9。
❸ 接下來就可以像我們第一種方法一樣用 Sumif 來求和了。
當然這裡也可以把顔色放在公式旁邊,如果顔色有兩種或者兩種以上的話,可以用下面這個公式:
=SUMIF(D:D,我的名稱 2,C:C)
如果有顔色增加或者減少的話,可以對原來的宏表函數修改下:
=GET.CELL(63,Sheet1!C2) NOW()*0
修改之後,如果顔色有變化,增加或者減少顔色的話,直接按【F9】就可以刷新了,不用再重新輸入一次公式。
PS:這裡必須要按【F9】來進行刷新,否則計算結果可能會出錯!因為這個宏表函數不會自動刷新噢!
有些宏表函數可以達到工作表函數無法完成的工作。
對于某些場合下,不會 VBA 的小夥伴們,還是值得學一學的。
04VBA 編程法推薦指數:★★★☆☆
難易程度:★★★★★
适用場景:顔色不限
适用版本:所有版本
這種方法對于大部分人來說,都不會。
因為涉及到了編程,相對來說比較難點。
但是,大部分情況下,我們其實并不需要知道代碼怎麼編寫,隻需要會用,會操作,就行。
❶ 按下【Alt F11】,打開 VBA 編輯界面;
然後在左側的工程窗口中,右鍵點擊插入一個模塊,會生成【模塊 1】。
❷ 把代碼複制到右邊的代碼窗口中,就可以了。
❸ 在工作表中,輸入公式:
=顔色求和(C2:C9,E1)
結果就出來了。
以下是代碼,供大家複制使用!
Function 顔色求和(rng1 As Range, rng2 As Range)
Dim r As Range, s As Double
'請選擇你要求和的單元格區域!
Set rng1 = Intersect(ActiveSheet.UsedRange, rng1)
For Each r In rng1
'如果目标單元格與第二參數單元格的填充色相同,就進行累加。
If r.Interior.Color = rng2.Interior.Color Then
s = s r.Value
End If
Next
顔色求和 = s
End Function
我們這裡用的是 VBA 中的自定義函數,也可以編寫個 Sub 子過程。
然後把這個子過程附到一個按鈕上面也可以的。
這種方法,如果大家有精力、有興趣的話,可以學習點錄制宏,自己再進行一些簡單的修改,就可以完成一些自動化的工作了,省時省力。
以上就是按顔色求和的 4 種主要方法。
05總結除了以上 4 種主要的方法之外,實際工作中還可能有以下幾種情況,比如:
❶ 是否是隔行(或者隔列)加了顔色,然後對隔行(隔列)進行求和?
❷ 是否是對于高于或者低于某一些數值的數據加了顔色,然後用 Sumif 或者 Sumifs 等函數設置下單條件或者多條件求和?
❸ 是否是針對某個部門或者某些人、某個時間段等加了顔色,然後用相應的函數求和?
……
工作中,可以根據實際情況,找出其中的規律,加以分析判斷,并做出選擇。
好了,大家如果有其他好的方法,也可以分享出來,一起讨論,一起學習,一起進步!
如果喜歡我的文章,請點個贊呗!
私信回複關鍵詞【2020】~
獲取100 套高顔值圖表模闆!
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!