Microsoft Excel是Microsoft為使用Windows和Apple Macintosh操作系統的電腦編寫的一款電子表格軟件。直觀的界面、出色的計算功能和圖表工具,再加上成功的市場營銷,使Excel成為最流行的個人計算機數據處理軟件。 我的MAX函數失靈了,怎么辦? Excelman:又遇到什么問題?快說來聽聽。? 于是表妹立馬從QQ那發來表格,我打開表格一看,情況是這樣:? ?? 表妹:我要求每種貨物裝箱號的最大值。比如第二行的貨物(A列)是蘋果,裝箱號(B列)是“1,3,4,5”,那么我要(在C列)得到1,3,4,5 五個數字最大的數,也就是5。我試過用MAX函數啦,結果怎么都是0。你看上面的截圖(圖一),MAX好像失靈不管用了!Excelman啊,我有上千行的數據要求裝箱號的最大值,怎么辦!? Excelman:表妹,你一時糊涂。如果MAX函數的參數是文本,雖然不會顯示錯誤符號,但是MAX函數只會把參數里的文本當作0處理。上圖(圖一)的 =MAX(B2) 相當于 =MAX(“1,3,4,5”) ,MAX值可不會把它當作有四個數值給你挑選出最大值。它只會認為“1,3,4,5”是一串文本,于是當作 0 處理。即是相當于 =MAX(0) ,結果肯定總是 0 啦。? 表妹:那也是哦。那你快告訴我怎么辦?? Excelman:別急。MAX函數的參數可以是數組。比如單元格輸入=MAX({1,3,4,5}) 試試看。? 表妹馬上試了一下,將結果截圖發來,如下圖二。?? ?? 表妹:有點神奇。這個公式什么意思?特別是這個{1,3,4,5},大括號包圍起來的東西是什么呀?? Excelman: {1,3,4,5} 是一個數組。數組者,即由一些數據作為元素構成的一組數據也。(這是廢話還是繞口令?)簡單淺顯地說,一個數組表達兩層意思,一是數據本身的值,二是數據所在的行列位置。比如{1,3,4,5}表達的是一行四列的一組數據。也就是說第一行第一列的數據的值是1,第一行第二列的數據的值是3,如此類推。又比如,{1,3,4,5;6,7,8,9}表達的是兩行四列的數據,英文逗號表示換列,英文分號表示換行。第一行第一列的數據的值是1,第二行第一列的數據的值是6,第一行第二列的數據的值是3,第二行第二列的數據的值是7,如此類推(參考下面的圖三理解吧)……?? ?? 表妹:不用說太多,我懂。我明白你想說的是,先將“1,3,4,5”、“2,8,9”等等這些字符逐個轉為數組,然后再用MAX函數逐個求最大值。對吧?? Excelman:聰明!正是如此!若得如表妹一徒,幸哉!? 表妹:那你告訴我怎么做吧?總不能讓我一個個敲鍵盤打大括號輸數字寫公式吧?? Excelman:你可以用下面的方法,三個步驟。? (1)第一步,在“裝箱號最大值”那列(圖四中的C列)用公式給每行構造出含有MAX函數單詞的文本。?? ? 比如上圖,在單元格C2填寫公式 ="=MAX({"&B2&"})" ,然后向下填充公式到表最后一行,這樣每一行都得到一個文本。這些文本恰好是我們希望手工逐一輸入的那些MAX函數公式!效果如圖四。? (2)第二步,將輔助列復制,選擇性粘貼,把輔助列的公式轉為數值。將輔助列的公式的值變成文本。? (3)第三步,到高潮了,這是見證奇跡的時刻!? “選定裝箱號最大值”那列的數據區域(比如圖五中的C列的數據區域C2:C5),按CTR+H快捷鍵,調出“查找和替換”對話框。“查找內容”和“替換為”兩處都要填寫“=”;是的,你沒有聽錯,兩處地方填的內容是一樣的,都是“=”(參考圖五)! 最后按“全部替換”。這樣能夠迫使Excel把作為文本的公式轉為真正可以計算的公式。妥妥的,收工!?? ?? 表妹:哇,沒想到方法還蠻簡單。看來今天加班不用很多時間啦。謝謝你,Excelman!? 后記:親愛的讀者,看到這里,學會了嗎?如果把表妹的問題加大一丁點難度,比如裝箱號的分割符不是“,”(逗號),而是“-”(減號),也就是“1,3,4,5”換成“1-3-4-5”,你應該也會解決吧?——別告訴你不會把“-”(減號)替換成“,”(逗號)哦。? 另外,這個問題用宏表函數Evaluate搭配MAX,或者自定義函數也可以解決,以后有機會再談。
Excel整體界面趨于平面化,顯得清新簡潔。流暢的動畫和平滑的過渡,帶來不同以往的使用體驗。 |