使用數(shù)組公式計(jì)算工資對(duì)應(yīng)的鈔票數(shù)量
在一些企業(yè)和工廠中,仍然采用現(xiàn)金發(fā)放工資的方式。而對(duì)于財(cái)務(wù)人員來(lái)說(shuō),預(yù)估各種面額的鈔票張數(shù)是一個(gè)必不可少的程序。對(duì)于大部分不懂VBA和函數(shù)的人員來(lái)說(shuō),這也是一個(gè)難點(diǎn)。 實(shí)際上,利用ET2009的數(shù)組
在一些企業(yè)和工廠中,仍然采用現(xiàn)金發(fā)放工資的方式。而對(duì)于財(cái)務(wù)人員來(lái)說(shuō),預(yù)估各種面額的鈔票張數(shù)是一個(gè)必不可少的程序。對(duì)于大部分不懂VBA和函數(shù)的人員來(lái)說(shuō),這也是一個(gè)難點(diǎn)。
實(shí)際上,利用ET2009的數(shù)組公式可以輕松解決這個(gè)問(wèn)題,只需要幾秒鐘。下面將演示具體需求和完成步驟。
建立輔助區(qū)并輸入面額
假設(shè)需要計(jì)算的面額包括100元、50元、20元、10元、5元、2元、1元。在工資存放列(假設(shè)為B列)右邊建立7列作為輔助區(qū),用于存放每種面額的鈔票張數(shù)。
- 在C1到I1區(qū)域分別輸入100、50、20、10、5、2、1。
- 選擇C1到I1區(qū)域,右鍵點(diǎn)擊并選擇“設(shè)置單元格格式”菜單。
- 在“數(shù)字”選項(xiàng)卡的“分類”中選擇“自定義”。
- 在右邊的“類型”框中將“G/通用格式”修改為“G/通用格式元”,這樣單元格中顯示的數(shù)字會(huì)帶有單位“元”。
計(jì)算鈔票數(shù)量
在C2單元格錄入以下公式:IF(COLUMN()3,INT($B2/C$1),INT(($B2-SUM(OFFSET($B$1,ROWS($A$1:A1),1,COLUMNS($B:B)-1)*OFFSET($B$1,,1,COLUMNS($B:B)-1)))/C$1)。
錄入公式后,需要同時(shí)按下“Ctrl Shift Enter”三鍵結(jié)束,表示按照數(shù)組公式計(jì)算,否則無(wú)法產(chǎn)生正確結(jié)果。
選擇單元格C1,將公式向右填充至I2,再雙擊填充柄,將C2:I2的公式向下填充至末尾。公式的計(jì)算結(jié)果可以在相應(yīng)的單元格中看到。
驗(yàn)證計(jì)算正確性
為了驗(yàn)證計(jì)算是否準(zhǔn)確,我們可以在J列建立一個(gè)輔助區(qū),用于匯總所有面額與數(shù)量的乘積。在J1輸入“匯總”,在J2輸入以下公式:SUM($C$1:$I$1*C2:I2)。
同樣地,雙擊J2單元格的填充柄,將公式向下填充到最末單元格。
通過(guò)比較J列的匯總值和B列的工資,可以清晰分辨公式的正確性。
公式思路解釋
計(jì)算100元面額的鈔票數(shù)量時(shí)最簡(jiǎn)單,只需要將工資除以100,然后利用INT函數(shù)取整即可,即公式中的“INT($B2/C$1)”部分。而計(jì)算其他面值的鈔票張數(shù)時(shí),只需要對(duì)剩下的部分工資進(jìn)行計(jì)算。重點(diǎn)是如何確定已經(jīng)計(jì)算過(guò)的鈔票面額的值。
在本例中,我們利用“OFFSET($B$1,,1,1,COLUMNS($B:B)-1)”獲取已經(jīng)計(jì)算過(guò)的鈔票面額,再用“OFFSET($B$1,ROWS($A$1:A1),1,1,COLUMNS($B:B)-1)”獲取已計(jì)算過(guò)的鈔票對(duì)應(yīng)的數(shù)量。兩者乘積并匯總,再用總薪資求差即為剩下的待計(jì)算金額。
如果你熟悉ET中的專用函數(shù)MMULT,你還可以使用“IF(COLUMN()3,INT($B2/C$1),INT(($B2-MMULT(OFFSET($B$1,ROWS($A$1:A1),1,1,COLUMNS($B:B)-1),TRANSPOSE(OFFSET($B$1,,1,1,COLUMNS($B:B)-1))))/C$1)”來(lái)改寫這個(gè)數(shù)組公式。