最近收到在某快遞上班的周同學問題求助,主要是在計算包裹的體積時遇到了些麻煩事。
下面我們就來看看周同學遇到的問題能否有好的解決方法。
下表是周同學近期整理的快遞包裹尺寸數據,其中重要一項工作就是透過長*寬*高來計算出包裹的體積。這個問題也是我們常遇到的Excel算式自動計算問題。
週同學表示其實自己也能做出來,只不過是方法比較笨拙原始。
一、Excel分列資料計算體積
#週同學自己使用的方式是分列,由於長寬高3個數字均由星號隔開,所以使用分列的方式將數字分別放置在三個單元格中即可完成計算體積。
操作步驟
1、勾選G列資料後點選【資料】標籤中的【分列】
2、出現分列精靈對話框,我們總共需要3步驟完成資料分列。第一步是選擇分列的方式:【分隔符號】、【固定寬度】,週同學的表中有星號分隔數據,可以使用分隔符號分列,所以我們選擇【分隔符號】後點選【確定】。
註:【分隔符號】方式分列主要運用於有明顯字元隔開的情況,【固定寬度】主要運用於無字元隔開或者無明顯規律的情況手工設定分列字元的寬度。
3、點選【下一步】進入文字分列精靈第二步,在這裡我們可以選擇分隔符號,可以是TAB鍵、分號、逗號、空格、其他自訂。由於預設選項中沒有星號,所以我們勾選其他,然後輸入星號即可。
當輸入完成後,下方資料預覽可以看到資料中的星號字元變成了豎線,已經完成了分列。
4、點選【下一步】,列資料格式為常規,直接點選【完成】即可。
此時出現提示:此處已有資料。是否替換它?
由於分列前G列內容包含長寬高尺寸數據,分列後,G列被替換成「長」。
直接點選【確定】,可看到分列結果。
5、根據長寬高輕鬆計算包裹體積。
週同學覺得這樣還不是最好的方案,因為表格列數是固定的,而且資料都已經和其他表格相互關聯,分列資料後插入了2個新列,那數據豈不是都亂了嗎?
二、提取數字計算體積
我們來試試用文字函數來解決。 (前方高能,這裡只需要了解一下就可以了,主要是為了突出第三種方式的簡單)
#既然我們要計算包裹的體積,那麼我們只需要將G列中的長寬高資料分別提取出來然後相乘即可。
提取長度資料:
函數公式:=LEFT(G2,FIND("*",G2,1)-1)
提取寬度資料:
函數公式:
=MID(G2,FIND(" *",G2,1) 1,FIND("-",SUBSTITUTE(G2,"*","-",2))-1-FIND("*",G2,1))
#提取高度資料:
函數公式:
=RIGHT(G2,LEN(G2)-FIND("-",SUBSTITUTE(G2,"*","-",2),1))
#最後我們將3個函數公式合併巢狀統計得出包裹的體積。
好了,我知道上方的函數公式太複雜,大家都不想學,所以也沒給大家做過多的函數解析,簡單粗暴,下面給大家隆重推薦一個最簡單的方法:宏表函數。
三、EVALUATE函數計算體積
EVALUATE函數怎麼使用,首先我們了解EVALUATE的意義,其實EVALUATE是宏表函數,宏表函數又稱為Excel4.0版函數,需要透過定義名稱(並啟用巨集)或在巨集表中使用,其中多數函數功能已逐步被內建函數和VBA功能所取代,但是你一分鐘學不會VBA,卻可以學會巨集表函數。函數EVALUATE的應用程式比較常見的就是Excel運算式自動計算,
下面我們開始操作示範:
1、選取G列,點選【公式】選項中的【名稱管理器】
彈出如下所示對話框:
#2、點選【新】,在【新名稱】對話方塊中輸入名稱為TJ,應用位置輸入函數公式
=EVALUATE(Sheet1!$G$2:$G$44)/1000/1000
( 備註:由於之前單位是厘米,我要將統計結果轉換為立方米,所以需要除1000000)後單擊【確定】。最後關閉名稱管理器。
公式解析:
# 由於G列資料長*寬*高,*在excel中就是乘法的意思, G列的資料本身就可以看作一個公式,我們只要得到這個公式結果就可以啦。而EVALUATE的功能就是要得到單元格內公式的值,所以在上圖中,大家會發現,EVALUATE函數中的參數就只有一個資料區。
3、見證奇蹟的時刻到了。在H2單元格中輸入TJ兩個字母就能快速得到體積資訊囉!
這種即簡單又快速還不用輔助列的方式是不是很棒!簡直是3全其美!週同學的問題終於有了完美的解決方案。
相關學習推薦:excel教學
以上是Excel函數學習運算式自動計算利器evaluate()的應用的詳細內容。更多資訊請關注PHP中文網其他相關文章!