Hello,大家好,今天跟大家分享下我們如何在excel中設置動态求和的效果,如下圖,當我們更改姓名和月份的時候會根據我們選擇的數據自動求和,比如:我們将名字設置為劉備,截止月份設置為12月,就會對劉備1月到12月的數據進行求和,這個的操作其實也并不難,我們使用offse,SUM以及match函數即可搞定,下面就讓我們來看下是如何操作的
一、制作下拉菜單
為了保證我們輸入的數據都是正确的,我們可以将姓名以及截至月份都制作為下拉菜單,這個的操作也非常的簡單,首先我們選擇目标單元格,然後點擊數據驗證,在允許中,選擇序列,緊接着選擇所有的姓名點擊确定,這樣的話就制作完成了,截至月的下拉菜單跟這個的制作方法是一樣的
二、動态求和
在這裡我們隻需要輸入公式點擊确定,然後在選擇對應的姓名以及截至月份函數就會根據我們選擇的内容進行求和
公式為:=SUM(OFFSET(A1,MATCH(A13,$A$2:$A$10,0),,,MATCH(B13,A1:M1,0)))
簡單的跟大家講解下公式的原理,在這裡我們我們主要是運用offset函數來構建一個動态的數據區域,來達到動态求和的效果,我們來剖析下offset函數,offset函數的作用是:以一個區域為基點進行偏移得到一個新的偏移區域,我們以孫尚香十月這個數據跟大家講解下函數
第一參數:偏移的基點。A1
第二參數:偏移行數。MATCH(A13,$A$2:$A$10,0),這個函數會查找孫尚香這個名字在姓名這一列的位置,它的結果是8,所以函數會向下偏移8個單元格,到達下圖黃色的位置
第三參數:省略
第四參數:省略
第五參數:寬度,MATCH(B13,A1:M1,0),這個函數會查找在A1:M1這個區域中10月份的位置,在這裡他的結果是11,函數返回的數據區域就是如下圖所示黃色加紅色的區域
最後我們再利用sum函數對這個區域的數值求和即可得到正确的結果
以上就是這個函數的結果過程,在這裡我們必須要理解offset函數的用法,之前已經跟大家介紹過好多次了,如果不明白的話,可以翻看下之前的文章。
怎麼樣?你學會了嗎?我是excel從零到一,關注我持續分享更多excel技巧