2021-05-12 14:32:11
圖文範例詳解OFFSET函數的使用方法
說起OFFSET函數,真的是像霧像雨又像風,從複雜的資料匯總、到資料透視表再到高階動態圖表,都離不開OFFSET函數的默默付出。
通過OFFSET函數,可以生成資料區域的動態參照,這個參照再作為半成品,通過後續的處理加工,就可以為圖表和透視表提供動態的資料來源、為其他函數生成特定的參照了。
首先,咱們說說這個函數的作用,微軟的幫助檔案是這樣描述的:
以指定的參照為參照系,通過給定偏移量返回新的參照。
瞧瞧,這麼簡單的幾句話,讓人家怎麼能猜透你的心思嘛。
這個函數有5個引數:
第一個引數是基點
第二個引數是要偏移幾行,正數向下,負數向上。
第三個引數是要偏移幾列,正數向右,負數向左。
第四個引數是新參照幾行。
第五個引數是新參照幾列。
如果不使用第四個和第五個引數,新參照的區域就是和基點一樣的大小。
如果使用下面這個公式:
=OFFSET(C3,4,2,4,3)
就是以C3為基點,向下偏移4行,向右偏移2列,新參照的行數是4行,新參照的列數是3列,最終得到對E7:G10單元格區域的參照。
當然,僅僅得到參照是沒啥用處的,咱們的目的是把OFFSET函數得到的參照作為一個半成品,再通過其他方法進行再加工。
這麼說還是有點抽象啊,再來一個形象一點的:
OFFSET函數就像是一個鬼子小分隊,從據點董家莊(C3)出動,順著大路向南走4里(C7)
拐彎兒再向東2浬,這時候就到馬家河子(E7)了
鬼子隊長說了,我要以馬家河子(E7)這個地方開始,再占領一片地盤。有多大呢?向南4浬,向東3浬。
吆西,結果就是E7:G10單元格區域了。
簡單認識了OFFSET函數,咱們再用一個動態圖表的製作,來說說OFFSET函數的實際應用。
OFFSET函數和動態圖表之間,屬於是“見不得人”的關係。
所謂動態圖表,就是能根據指定的條件,自動變化圖表資料來源,使圖表能夠按照我們指定的規則,動態顯示資料中的重點關注部分。
說“見不得人”,是指不能在圖表中直接使用OFFSET函數,而是要將OFFSET函數先定義成名稱,然後在圖表中使用自定義名稱作為資料來源。
看下面這個題目:
這個銷售流水記錄中,每天都要不斷的新增資料。現在要製作一個圖表,僅展示最近7天的銷售狀況。
首先,在【公式】索引標籤下,單擊【定義名稱】,分別定義兩個名稱:
日期=OFFSET($A$1,COUNT($A:$A),0,-7)
銷售額=OFFSET($B$1,COUNT($A:$A),0,-7)
說說定義名稱日期這個公式的意思:
COUNT函數對A列數值計數,結果作為OFFSET函數的行偏移引數。
OFFSET函數以A1為基點,向下偏移的行數是COUNT的結果,也就是A列有多少個數值,就向下偏移多少行。
這時候就相當於到了A列數值的最後一行,給定的偏移列數是0,新參照的行數是-7,得到從A列數值的最後一行開始,向上7行這樣一個動態的區域。
如果A列的數值增加了,COUNT函數的計數結果就增加了,OFFSET函數的行偏移引數也就隨之變化。
就相當於一竿子捅到底,然後來個燒雞大窩脖兒,向上參照7行,所以得到的始終是最後7行的參照。
接下來,按下圖步驟插入一個柱形圖。
右鍵單擊資料系列,選擇資料來源
設定資料系列的系列值為:
=Sheet2!銷售額
這裡的Sheet2,是資料來源工作表的名稱。銷售額,就是定義的名稱。
設定軸標籤的區域為:
=Sheet2!日期
OK了,以後我們只要不斷的在資料來源表格中新增資料,這個圖表就始終顯示的是最近7天的資料變化了。
最後別忘了,再對圖表進行簡單的美化,收工了——
今天只是講了OFFSET函數的基本用法,其實她還有很多更加複雜的參照方式,需要咱們一點點的學習領悟。
相關文章