[E2-02]地址引用
閑言碎語莫再提,今天有了點突發情況,本來碼字的時間用來干別的事情去了。
今天沒有扯淡,沒有餐前甜點,沒有蠟燭紅酒和從天而降的神秘嘉賓,今天坐在餐桌上直接就是一盆米飯,簡單粗暴吃到飽!
當然,最後還是要一碗湯的,畢竟我國著名情感專家潘金蓮有句名言「大郎,快起來喝完這碗湯,病就好了!」。
好,直接上大郎愛吃的硬菜,我們講講公式的地址引用。
1.定義問題
還記得一頭豬變成一箱香腸的故事嗎?再強大的生產線也有有豬配合才行啊。
作為數據處理加工生產線的EXCEL公式,大部分情況下,是需要輸入初始數據才能進行加工的,那麼通常我們需要告訴公式初始數據所在的位置,這個位置信息的描述過程就是地址引用。
所謂地址引用,就是對一個或多個單元格所在地址的描述信息。公式可以依據這個描述信息獲取對應單元格存儲的數據。
最簡單的地址引用是基於行列坐標唯一確定一個單元格位置的引用方式,其中行坐標用自然數表示,如「5」表示第五行;列坐標用「A」開頭的字母表示,如「C」表示第三列。約定的行列坐標地址表示法是列坐標在前,行坐標在後,如「A1」對應最左上角的那個單元格,「C5」代表第五行第三列的那個單元格。
2.相對引用,絕對應用,混合引用
接著剛才的說,像「C5」這種地址引用表示是最常見的地址引用,編輯公式的時候滑鼠點擊某個單元格區域,默認的地址表示就是這種字母加數字形式。依然是公式編輯區域,我們獲得這樣的地址以後,游標還是放在地址信息上,然後按下F4鍵,我們發現地址信息變了,大致是 C5→$C$5→C$5→$C5→C5 這種模式循環切換,發生了什麼?上述切換顯示的不同地址就是指的就是地址的相對引用、絕對引用和混合引用,具體而言:
相對引用
相對引用就是類似 C5 這種地址表示,選中該單元格,向右拖拽,則地址自動變為D5、E5、F5 ……,向下拖拽,則地址自動變為 C6、C7、C8 ……相對引用是任人打扮的小姑娘,軟萌還是御姐隨你。相對引用更多信息見下圖:
絕對引用
絕對引用就是類似 $C$5 這種地址表示,向右、向下拖拽,地址永遠都是這個,「遇見拖拽,我再也不怕不怕啦」,絕對引用是冷酷堅定的硬漢,冷酷到底。n絕對引用更多信息見下圖:
混合引用
混合引用類似於 C$5 或者 $C5 這樣的地址表示,發現「$"位置不同對不對?n$的位置在什麼位置則鎖定了對應的行或者列,比如$C5鎖定了列,這個時候你向下拖拽,地址會依次變為$C5、$C6、$C7……,向右拖拽,則一直是$C5,因為鎖定了列。你可以簡單的用這句話記憶「看到美元就走不動路了」,明白?更多信息見下圖。
跨域引用
我們知道一個EXCEL工作簿有多個SHEET頁,如果我們要跨SHEET引用,砸使用類似「sheet1!A1」這種地址表示,記得SHEET和單元格地址之間有!符號,至於單元格地址本身,依然支持上述三種地址表示。n還有一種更大範圍的跨工作簿,其實就是跨EXCEL文件引用,我強烈建議你不要考慮這種引用方式,這種方式依賴文件之間的相對位置,時間長了沒人能保證相對位置不變,很容易導致一堆無效公式,再說一遍,**不推薦使用跨工作簿(文件)引用數據**,不推薦!
九九乘法表案例
光說不練可不行,我們來玩玩九九乘法表,如下圖所示,中間數字是有第一行和第一列數據相乘得到的,如何通過一個公式自動計算填充單元格的值?答案是:
=IF($A2>=B$1,$A2*B$1,"")n
仔細想想為什麼是這麼寫的,還是想不明白?關注微信公眾號「怒馬說」加入免費答疑社群提問吧。
一般的教程寫到這兒也就完了,我不!
扶我起來,我還能寫!
呼吸不停,筆耕不輟,折磨讀者,自得其樂!!
3.引用運算符
還記得上次公式基本概念中講的運算符嗎?對,還缺一個引用運算符這裡補上。當在公式中引用單元格區域的時候,可能會用到引用運算符。引用運算符主要由冒號「:」,逗號「,」以及空格「 」。
- 冒號(:)。區域運算符,生成對兩個單元格作為對角線連接出來的矩形區域的所有單元格引用。如A1:C5對應的是一個5行3列的矩形區域。
- 逗號(,)。聯合運算符,將多個單元格區域合併在一起(並集),如「A1:C5,B2:E10」對應的引用區域如下(下圖中兩個綠色線框對應的區域):特別注意,下圖中重合區域是要算兩次的,比如求和的話重疊區域要價兩次的!!
- 空格(」 「 )。交叉運算符,取多個單元格的交叉部分(交集),如「A1:C5 B2:E10」對應的引用區域如下圖綠框部分所示:
思考題:假設上圖中,每個單元格的值都是1,則=SUM(A1:C5,B2:E10) 和 =SUM(A1:C5 B2:E10)的值分別是多少?答案是前一個值是51,後一個是8,你猜對了嗎?
4.ISREF函數
上述單元格引用有一個函數需要注意一下,就是ISREF函數,這個函數返回邏輯值,如果兩個區域有交叉區域返回TRUE,否則返回FALSE。注意輸入參數必須是空格連接的兩片區域。因此,=ISREF(A1:C5 B2:E10)返回TRUE。
完了嗎?還沒有。
5.智能表格的結構化引用
先簡單說說智能表格。
嚴格來講,我們通常意義上用到的所謂「工作表」準確的名稱應該是「數據區域」,表格在EXCEL中對應的概念是「智能表格」。
智能表格的好處太多以至於我必須在後面「面」的部分專門有一章來歌頌它,總之,你會愛上它,必須愛上!
怎麼創建智能表格?首先你要確保數據區域是規範乾淨的(回頭去複習資料庫思維),沒有合併單元格,每一列都有列標題都是必須的。
在這個前提下,全選數據區域,按下 < ctrl+T >組合鍵:
看到沒,你要是沒有標題,EXCEL會幫你創建類似列1、列2的標題,能忍嗎?不能忍,所以你要自行先創建標題,這樣在上圖對話框直接點擊確定就可以了。
神奇
的事情發生了,你在獲得了一個智能表格的同時還自動獲得了隔行變色樣式,不喜歡配色?在設計選項卡里自己更改就好了,不過這不是本章重點。我們來看看智能表格在地址引用上的高效和優雅,先上示例數據:
在設計選項卡能直接看到表格名稱,例如叫做「表2」,此時引用將變得異常簡單且可讀性極高,再也沒有那些行列地址表達法了,全是可讀文字。具體而言,要引用某一列如數量列的數據,直接就是「表名[列名]」即可,舉例,我們要計算上表的數量匯總,則公式為:
=SUM(表2[數量])n
驚不驚喜?意不意外?潛在的好處還有,如果你對表格行做改動,增加列,刪除列,這個公式是無需做任何改動的。這才是智能的意義所在!再舉個例子,統計上表中分店「旭匯電子」的銷售數量匯總,公式為:
=SUMIF(表2[分店名稱],"旭匯電子",表2[數量])n
名稱管理器也有類似玩法,這不比寫地址好用多了是不是?智能表格的好處遠不止這些,地址引用只是其中很小的一個便利而已。
結構化引用就是這麼玩的。還有嗎?沒了,全文完。
- - - - - - - - - - - - - - - - - -
感謝中南海香煙,青島啤酒,網易雲音樂對公眾號的大力幫助,每個孤寂無聊的深夜,是你們給我力量。利益相關,以上品牌均未能有幸成為本公眾號贊助商。
關注公眾號「怒馬說」,獲取海量EXCEL乾貨。
推薦閱讀:
※在哪些方面,Numpy的速度反而比不上原始Python?
※fMRI experiment Design:GLM引發的一些實驗設計要求
※Dynamic Causal Modeling:確定性因果模型(上)
TAG:MicrosoftOffice | MicrosoftExcel | 数据处理 |