你的加班在老闆眼裡一文不值?因為Excel宏表函數3秒就可以解決

2019-08-03     愛踢汪

嗨,我是愛踢汪。今天我們就跟大家一起羅列一下幾個常用的宏表函數使用案例,相信你會大吃一驚的哦!首先我們要理解宏表函數到底是什麼函數。宏表函數是早期低版本excel中使用的,現在已由VBA頂替它的功能;但仍可以在工作表中使用,不過只能在"定義的名稱"中使用;還有極少數的宏表函數使用後不會自動改變,而需要按快捷鍵更新。

1、get.workbook宏表函數

函數語法為get.workbook(type_num,name_text),即提取工作表信息,參數type_num表示提取的類型編號,name_text表示是打開的工作表名稱,如果省略則表示當前活動工作簿。參數type_num包含的代碼較多,我們主要使用的是1,表示「正文值的水平數組,返回工作簿中所有工作表的名稱」。舉例:下表是某公司產品型號明細表,匯總表A列是工作表名稱,現在需將工作表名稱提取放置在A列。

第一步:單擊【公式】選項中的【名稱管理】。

第二步:單擊【新建】打開【新建名稱對話框】,輸入名稱以及引用位置。

第三步:單擊【確定】後我們可以在【名稱管理器】中看到剛剛添加的一條記錄,單擊關閉。

第四步:在匯總表A2單元格中輸入函數公式=INDEX(名稱,ROW(A1)),通過INDEX引用之前定義的宏函數。ROW(A1)目的是為了INDEX函數的第二個參數隨之向下填充而變化,這樣我們就能依次提取第1、2、3、4……N個工作表的名稱。

我們還可以通過=TRANSPOSE(名稱)公式來完成。選中A2:A10單元格區域後輸入=TRANSPOSE(名稱):

然後使用數組公式快捷鍵ctrl+shift+enter即可完成提取。

2、get.cell宏表函數

函數語法為get.cell(Type_num, Reference),Type_num指明單元格信息的類型,範圍為1-66。Reference為引用的單元格或區域。經常使用的是63,63 返回單元格的填充背景顏色。下表數據存在3種不同的背景填充顏色,現在需要通過宏表函數將顏色編號統計出來,最後通過編號完成按顏色求和。

第一步:打開名稱管理器,在【新建名稱】對話框中輸入名稱YS(顏色),引用位置=GET.CELL(63,WW!$D2)。63表示提取單元格背景填充顏色。

注意:在引用單元格時必須鎖定列,輸入$D2。第二步:單擊【確定】關閉名稱管理器,在E2單元格輸入=YS後向下填充,可以看到每一種顏色均由不同編號標識。

第三步:最後通過SUMIF函數求和即可。如下所示:

3、EVALUATE宏表函數

EVALUATE用於統計引用單元格中以文本形式表示的算術表達式的值。舉例:下表中G列數據為包裹的長寬高數據,現在需要根據G列數據統計包裹體積。

第一步:打開【名稱管理器】新建一條名稱記錄如下:

第二步:單擊【確定】關閉名稱管理器,在H2單元格輸入=體積,向下填充即可。

4、GET.FORMULA函數

GET.FORMULA作用是返回引用單元格內的公式。函數語法:GET.FORMULA(reference),reference:指定引用的單元格。GET.FORMULA宏表函數使用以R1C1樣式返回結果。(這句話文章後面會解釋)舉例:

上圖是某員工通過函數公式計算包裹體積。現在需要將K列的公式提取出來並以文本形式顯示。第一步:選中K列數據區域,打開【名稱管理器】,新建一個MM的名稱記錄,引用位置為:=GET.FORMULA(GET.FORMULA!$K$2:$K$10)

第二步:單擊【確定】關閉名稱管理器後L2單元格中輸入=MM即可顯示K2單元格中所使用的函數公式。

大家看到公式中的RC[-4]是不是有點疑問?其實這是單元格引用的另一種表示形式——R1C1形式,R後面的數字表示行數,C後面的數字表示列數。不加「[]」的數字表示的是從第一行(列)數起的第幾行(列);加「[]」的數字表示從公式所在單元格算起,行位置向上或下移動的行數,列位置向左或向右移動的列數。比如:rc[-3]*rc[-2]表示當前單元格(公式所在單元格)向左移動3格所在單元格的數值,乘以當前單元格向左移動兩格所在單元格的數值。本例中的RC-4表示K2單元格向左數第四列。

5、GET.DOCUMENT宏表函數

GET.DOCUMENT用於按照指定信息類型返回名稱。GET.DOCUMENT函數語法:GET.DOCUMENT(type_num,name_text),type_num:指明信息類型的數字,一共有88中數字代碼表示88種類型。通常使用GET.DOCUMENT(76)和GET.DOCUMENT(88)來返回活動工作表和活動工作簿的文件名。舉例:第一步:打開【名稱管理器】新建一條名稱記錄。我們設置名稱為MC,引用位置為=GET.DOCUMENT(76),單擊【確定】後關閉【名稱管理器】。

第二步:在任意單元跟中輸入=MC後即可返回當前工作表名稱。

6、FILES宏表函數

FILES宏表函數的作用是返回指定目錄下的文件名,FILES宏表函數以一維數組的形式返回結果。

FILES函數語法:FILES(path),path:指定從哪一個目錄中返迴文件名。

path接受通配符,問號 (?) 和星號 (*)。問號匹配任意單個字符;星號匹配任意字符序列。舉例:我們現在要返回本計算機C盤下的所有文件名稱。第一步:打開【名稱管理器】,【新建名稱】對話框中輸入名稱為CP,引用位置為:=FILES("C:\\*.*")。其中"C:\\*.*"就表示路徑C盤下的所有帶後綴的文件,星號通配符表示所有,不包含文件夾。

第二步:關閉【名稱管理器】,在A1單元格輸入=INDEX(CP,ROW(A1))後向下填充。

與C盤文件對比完全一致。好了今天我就跟大家分享這6個常用的宏表函數,其實宏表函數雖然陌生但是使用起來還是相當的簡單的哦!比起我們常規的函數嵌套要容易很多,這麼簡單而且用處大大的宏表函數大家一定要學會哦!也許會幫你大忙!希望大家可以自己嘗試操作!我是愛踢汪,您的關注是我堅持到現在的唯一動力,有了您的支持與鼓勵,我才有信心一直堅持下去,繼續奉上更多內容。衷心期待您能點一下上面紅色關注按鈕,關注我一下。萬分感謝!

文章來源: https://twgreatdaily.com/zh-cn/YiEq7mwBJleJMoPMkCWZ.html