VBA如何更新會計期間 - 會計

Bethany avatar
By Bethany
at 2017-01-22T07:43

Table of Contents


VBA如何更新會計期間

網誌圖文版:

http://www.b88104069.com/archives/4158

一般公認會計原則有個期間假設。我一直記得大學初會教授這麼介紹:一家
公司到底賺不賺錢、賺了多少,只有等到結束營業關門大吉才能最終確定,
可是投資者和債權人等不及了,所以在會計上要切成期間:每個月、每季度
、每年度。很多會計特有的專業術語,例如固資折舊、收入認列、費用配合
,都是圍繞著如何分開期間而來。而在會計人的工作,也因為這樣基本上設
定為以月為周期,周而復始地以每月結帳為基調,常常每個月結完帳,一大
堆管理報表要先更新期間,在此介紹如何以VBA更新會計期間:

一、產品別毛利彙總表,有這個月和上個月的資料,方便比較。此報表每個
月都要編製,格式相同,到了下個月,最原始作法,是複製上個月檔案,手
工將期間從「1602」改成「1603」、將「1601」改成「1602」。

二、上個步驟更新期間需要改六個儲存格,聰明一點的想法,是引用同一來
源更新。例如新建一個「參數」工作表,設計好會計期間的填寫表格。

三、將報表表頭連結到「參數」工作表,如此一來,每個月只要更新兩個參
數,報表期間就更新好了,從六個儲存格減到兩個儲存格。

四、類似這樣的情況,Excel專業作法是「名稱」。把上方功能區移到「公
式」頁籤,選擇「名稱管理員」,在跳出來的視窗「新增」。

五、「編輯名稱」視窗,看起來一目瞭然,新增一個叫「本期期間」的名稱
,其內容參照到「=參數!$B$1」。

六、於資料編輯列直接輸入名稱,Excel自動帶出名稱內容。

七、編寫程式:「Names.Add Name:="本期期間A", RefersTo:="1604"」是
很標準的VBA語法,「Names」是操作對象,「Add」是操作方法,中間以「.
」隔開,後面「Name:=」和「 RefersTo:=」是關於此次操作的屬性。順
帶一提VBA都是用半形符號,我文章為了編排版面,特地改成全形。「
ActiveWorkbook.Names.Add Name:="本期期間B", RefersTo:="=參數!$B$1"
」的說明如同程式裡的附註:「'於目前工作簿新增名稱」,應該不難理解
。「Current = InputBox("請輸入本期期間", "會計期間") 」這裡用到了
VBA特有的函數「InputBox」,兩個參數用法在下一步驟會很清楚。

八、執行上一個步驟的「輸入會計期間」巨集,最後會跳出輸入視窗,這裡
可以很清楚兩個參數的作用,一個是視窗標題列的內容、一個是輸入提示的
內容。

九、執行完巨集,再叫出「名稱管理員」,成功建立好了會計期間的名稱。
如果原來有報表期間有設定好使用「本期期間C」和「上期期間C」,在輸入
完InputBox對話方塊,會很神奇看到報表自動更新了會計期間。

InputBox是VBA特有的函數,它如同Excel裡面的IF函數一樣,結構簡單但是
很實用。IF提供了公式計算中的邏輯判斷,InputBox則是讓Excel輸入方式
不再侷限於儲存格,透過對話方塊視窗和名稱,等於是自行設計類似於一般
應用程式的輸入界面,這是VBA主要功能之一。不過InputBox還是有先天限
制,只能輸入文字型資料,而且一次只能輸入一個,在某些情況並不適用,
必須有另外的方法,留待以後再介紹。


延伸閱讀:

VBA如何整理程式代碼

http://www.b88104069.com/archives/4157

VBA如何批次刪除空白列

http://www.b88104069.com/archives/4153

VBA如何控制表單輸入防止錯誤

http://www.b88104069.com/archives/4152

--


周末,我們繼續Excel:精華區=>21.心得=>5.其他=>3.office

會計人的Excel小教室: https://www.facebook.com/acctexcel


--
Tags: 會計

All Comments

會計問題-公司債發行價格

Agnes avatar
By Agnes
at 2017-01-21T22:19
再麻煩大家解答,謝謝 甲公司於X6年3月1日發行面額100,000,5年期,票面利率4%債券每年3月1日付息一次,發 行日當天市場利率3%,該公司債發行價格? 3%,5期1元複利現值:0.862609 3%,5期1元年金現值:4.579707 我的計算如下: 100000x4%=4000每期支付利息 發 ...

會計問題-計算普通股加權平均股數

Edward Lewis avatar
By Edward Lewis
at 2017-01-21T21:56
麻煩大家幫忙解題,感謝 丙公司X8年成立,該年底流通在外普通股為9,000股, 該年度股本結構變動如下, 4/1 股份分割1:2,股票股利20% 10/1 現金增資6,000股 11/1 購入庫藏股3,000 則該年度丙公司普通股加權平均流通在外股數? 我的計算是先求出期初股數, 再求出實際流通股數蚻 ...

請問在建工程

Mason avatar
By Mason
at 2017-01-21T21:56
http://i.imgur.com/NCMEgEV.jpg 請問這題為什麼答案不是B X6年淨利應增加585,000元不是還要包括x5年的淨利ㄧ起加進去嗎? http://i.imgur.com/WaC2Gyp.jpg 所以這題是要作前損益調整嗎? 那算是前期錯誤更正還是會計政策變動 另外會計政策和會計原則 ...

書單健檢

Jack avatar
By Jack
at 2017-01-21T18:42
各位先進好,現在想開始準備今年的會計師考試,可以當全職考生,暫不考慮補習。 以下是蒐集資料後(從置底書單文而來),準備的書單,想請各位先進幫忙健檢書單。 中會:張仲岳老師等人 2017一月新版 高會:林蕙真老師 新論七版 2013年版 成會:林蕙真老師 新論六版 2015 審計:志光金老師 2017年版 ...

會計問題

Oliver avatar
By Oliver
at 2017-01-21T17:59
麻煩大家幫忙解題,感謝 問題一、 梅花公司擁有櫻花公司80%股權,櫻花公司於105年以銷貨毛利$35,000之方式出售商 品予梅花公司,105年底梅花公司仍持有該商品五分之一尚未出售,櫻花公司105年 淨利為$200,000,則105年非控制權益淨利為: 答案:$38,600 問題二、 ...