Excel計算利息,學會TODAY、DATE、DAY、EOMONTH等日期函數

Excel許多日期相關函數,TODAY、DATE是基本,DAY、MONTH、YEAR很好用,EOMONTH是進階函數,實務中經常搭配邏輯和文字函數組合運用,本文以定期存款應收利息為例介紹。

公司銷貨帶來應收帳款收現,進貨必須應付帳款支付,還有生產運作種種環節的現金收支,因此在經營過程中,難免手頭上都會有一些短期閒置資金。專注本業的穩健公司,不會把這些錢從事風險性的股票投資,所以銀行短期定存便是這些短期資金最佳的去處。
銀行定期存款有幾個關鍵屬性:定存金額、利率、發息日、開始日期、定存期間、到期日,因為會決定發放多少利息、何時發放利息、何時收回本金。這些在Excel可以利用簡單數學公式計算。不過在會計有個應計基礎觀念,例如在25日發息好了,那麼在月底便有5-6天的暫估應收利息,這個需要藉助Excel較為進階的日期函數公式,以下具體分享:

一、定期存款明細

到期日由開始日期(存入日期)加上定存期間簡單計算而來:「=F2+G2」。通常在定存單上也會有到期日,這裡利用Excel公式直接計算,同時也是作為複核機制。

二、TODAY函數

有時候系統跑出來的報表會是所有的定存明細,即使已經到期的也會出來,就算系統不是如此,也有的時候是內部存檔管理需要,不會去刪掉已到期的定存。無論哪種情形,我們都可以透過日期函數TODAY和邏輯函數IF,設計公式判斷定存是否到期:「=IF((TODAY()-H2)>0,”Y”,”N”)」。

TODAY函數是傳回系統今天的日期,以這一個步驟來說,當時的日期為「2019/2/5」,函數的計算結果是每天都在變,這裡的是否到期是以當天作為基準。

三、DATE函數

TODAY函數雖然很方便可以得到當天的日期,然而在會計帳務處理,都是以某個期間的月底最後一日作為基準點,所以還是希望能得到月底日,這裡的範例也是如此。

設計一連串函數公式,以便得到當期期末日期:J欄公式為「=CONCATENATE(“20”,LEFT(A2,2))」、K欄公式為「=RIGHT(A2,2)」、L欄公式為「=DATE(CONCATENATE(“20”,LEFT(A2,2)),RIGHT(A2,2),1)」,這些主要配合A欄的系統年月期間,以文字函數LEFT取得左邊字串、RIGHT取得右邊字串,CONCATENATE合併字串,最終再以DATE函數依照年月日三個參數得到當月的月初日期。

四、EOMONTH函數

有了月初日期,設計公式:「=EOMONTH(L2,0)」,EOMONTH函數顧名思義:「傳回所指定月份數之前或之後的月份最後一天的數列數字」,公式裡的「L2」代表開始日期、「0」代表不往前也不往後,所以正是當月份,如此計算結果即為「2019/1/31」。

圖片中的「43466」為Excel的日期序列值,以日期而言便是「2019/1/1」。關於Excel日期序列值,在下一節第四步驟將有更進一步的說明。這裡從「43466」和「43496」相差剛好30,應該能理解它就是以數字方式紀錄日期,以便進行計算。

五、DAY函數

有了月末日期,設計公式:「=DAY(M2))」,表示傳回「M2」日期的天數,計算結果為「31」,亦即1月「當月天數」有「31」天。圖片中的「Serial_number」其值為43496。

六、ROUND函數

最後終於可以計算暫估利息了。於O欄設計簡單公式:「=IF(I2=”Y”,0,N2-E2)」,代表如果已經到期,「暫估利息天數」為「0」,否則以當月天數減掉發息日計算「暫估利息天數」。P欄公式為「=ROUND(C2*D2/365*O2,0)」,代表定存金額及利率以暫估利息天數計算的「暫估利息」,加個ROUND函數避免尾差。

七、函數公式測試

配合原始報表會將已到期定存也列入的特性,在上個步驟標黃色部份資料,可以看到「暫估利息」皆為零。這個步驟測試性地將期間設定為「1902」﹐標黃色部份可以看到「當月天數」皆為「28」,「暫估利息」也會同步更新,可見此報表公式模型的設計相當完整。

Excel設計函數的好處

這裡的銀行定存暫估利息表,其實熟悉Excel基本操作的讀者,毋須如此大費周章也能計算暫估利息。這節範例花了很多心思設計函數公式,用意有兩點:

其一:如同第六第七步驟所示,只要將公式模型架好了,幾乎是一勞永逸,長期以往可以提升每月結帳的效率;

其二:這是個很好的範例機會,嘗試使用設計較為進階的日期函數,只要熟悉了這些函數,在其他相關的實務個案,例如員工年資、銀行借款、帳款帳齡存貨庫齡,都有可能會用到,因此值得研習。

每天學習,每天充電:Excel函數文章合輯

最新文章: