(黃巖區(qū)長潭水庫管理局 浙江臺州318024)
筆者所在單位實行會計電算化已經(jīng)有二十年,期間進(jìn)行過多次升級,逐步增加模塊。到目前為止運(yùn)行的模塊有總賬、存貨核算、工資管理、報表等。電算化系統(tǒng)在單位會計核算、財務(wù)報表、查賬、檔案輸出、工資核算等方面發(fā)揮了積極的作用,提高了工作效率。電算化軟件雖然具有高效、完整的特點,但在某些情況下,由于各方面的原因也存在不能充分發(fā)揮快速、準(zhǔn)確的功能。如我單位電算化系統(tǒng)的存貨核算模塊,在審核和報表方面不能發(fā)揮應(yīng)有的作用。此時若結(jié)合電子表格EXCEL,再在VBA編程環(huán)境中加入少量的代碼,就能使存貨核算在審核和報表方面發(fā)揮高效、快速、準(zhǔn)確的作用。本文結(jié)合實際工作,談?wù)凟XCEL VBA在財務(wù)核算中的運(yùn)用及作用。
我單位的存貨核算電算化有10余年,目前存貨目錄有近4 000行。在倉庫設(shè)有一個存貨核算終端,負(fù)責(zé)錄入每月發(fā)生的出入庫數(shù)據(jù);在財務(wù)室也設(shè)有一個存貨核算終端,負(fù)責(zé)審核每月發(fā)生的出入庫數(shù)據(jù)以及記賬、報表輸出。在每一個月,倉庫管理人員將全部入庫單和出庫單按時間順序錄入電算化系統(tǒng),至月底當(dāng)月單據(jù)錄入完畢后,再將單據(jù)全部交財務(wù)人員。財務(wù)人員將交來的單據(jù)與錄入模塊的出入庫數(shù)據(jù)逐一核對,進(jìn)行審核操作、記賬和報表。但是,由于本單位存在著特殊情況,倉庫還保留著手工賬簿。具體地說,每月倉庫管理人員按時間順序?qū)⒊鋈霂靻螕?jù)錄入電腦后(這時當(dāng)月單據(jù)的順序與存貨核算模塊中出入庫數(shù)據(jù)的順序是一致的),他們還需要在手工賬簿上按材料目錄順序記一遍手工賬。這時當(dāng)月單據(jù)的排列順序與手工賬簿中的材料目錄順序一致,而與存貨核算模塊中出入庫數(shù)據(jù)的順序不一致。倉庫管理人員每月經(jīng)過這兩次操作后,再將好幾百張的出入庫單據(jù)交給財務(wù)人員審核。此時,財務(wù)人員進(jìn)入存貨模塊審核出入庫數(shù)據(jù)時,就很難找到對應(yīng)的出入庫單據(jù)。
財務(wù)人員在接到倉庫管理人員傳遞的入庫單和出庫單后,在進(jìn)行審核時,發(fā)現(xiàn)這幾百張出入庫單據(jù)與電腦中存貨核算模塊中入庫單和出庫單的順序不一致。每月的出入庫單據(jù)張數(shù)少則200張,多則500張,因為順序不一致,存在著審核時找不到對應(yīng)的出入庫單據(jù)。為此,財會人員需先逐一將對應(yīng)的出入庫單據(jù)一張一張地找出來,等順序一致后,再按順序逐張進(jìn)行單據(jù)項目的審核,將紙質(zhì)的出入庫單據(jù)與存貨核算模塊中的出入庫數(shù)據(jù)核對相符后,再進(jìn)行記賬操作。這樣處理,由于單據(jù)數(shù)量大,需要花費(fèi)大量的查找時間,工作也存在著單調(diào)、強(qiáng)度大的缺點。
1.分析出入庫單據(jù)和庫存管理流水賬的關(guān)系。在分析出入庫單據(jù)后,發(fā)現(xiàn)庫存管理模塊中有一項功能是流水賬。單擊運(yùn)行后,輸入當(dāng)月時間,窗口立即顯示當(dāng)月的流水賬清單。進(jìn)一步分析后,發(fā)現(xiàn)模塊當(dāng)月的流水賬與出入庫單據(jù)存在著一一對應(yīng)關(guān)系。而且流水賬中有一列是存貨代碼,該存貨代碼與倉庫手工賬簿中的材料目錄是相同的,而順序卻不一致。而且流水賬中也沒有提供按存貨代碼排序的功能,不能對流水賬進(jìn)行排序操作,也不能排列成與出入庫單據(jù)相一致的順序。因此不能直接在庫存管理模塊中找到解決的辦法。
流水賬中提供了輸出功能,輸出格式里有EXCEL一項。于是就計劃先將流水賬轉(zhuǎn)換成EXCEL格式數(shù)據(jù),再在EXCEL里對流水賬按存貨代碼進(jìn)行排序,排序后的流水賬順序就能與倉庫管理人員傳遞的紙質(zhì)出入庫單據(jù)順序一致。最后將出入庫單據(jù)與EXCEL中排序后的流水賬逐一進(jìn)行審核,審核工作就會變得快速、準(zhǔn)確,而且這樣審核與直接審核出入庫單據(jù)的效果是等同的。
2.EXCEL VBA在流水賬排序中的作用。流水賬中的存貨代碼是由2-4組數(shù)字和分隔符號“-”組成的。由于分隔符號在存貨代碼中的位置不定,如果在EXCEL工作表中直接按存貨代碼排序后,不能得到與倉庫手工賬簿相一致的順序。因此,直接利用EXCEL工作表的排序功能還不能達(dá)到理想的效果。
EXCEL中的VBA環(huán)境能徹底解決排序問題。首先,在流水賬工作表中存貨代碼后面插入4空白列,準(zhǔn)備存放存貨代碼拆開后,并且去掉分隔符號“-”后的各段的代碼數(shù)字。然后在VBA中編寫代碼(限于篇幅只列出主要代碼):
將以上代碼插入VBA模塊,運(yùn)行以后,存貨代碼立即被分解成各段數(shù)字,并存放在存貨代碼所在列的后四列中。然后調(diào)用EXCEL工作表中的排序功能,將排序關(guān)鍵字按主次順序設(shè)置成這四列數(shù)字。重新排序后,理想的順序終于實現(xiàn)了。經(jīng)過核對后與出入庫單據(jù)的順序一致,也與倉庫手工賬簿中材料目錄順序一致。這樣就可以逐行審核排序后的流水賬,并與出入庫單據(jù)張張對應(yīng),避免了查找出入庫單據(jù)的工作,并且保證了審核出入庫單據(jù)應(yīng)有的作用和效果。EXCEL VBA解決了審核出入庫單據(jù)順序的問題。
目前,電算化系統(tǒng)中存貨核算模塊分別提供了入庫匯總表、出庫匯總表和收發(fā)存匯總表等三張材料匯總表。雖然從三個方面反映了材料的入庫、出庫和結(jié)存的總體情況,但是與本單位的會計核算方法不一致。在本單位的會計核算中,倉庫發(fā)出業(yè)務(wù)分為材料和固定資產(chǎn)兩部分,其中材料發(fā)出計入各成本、費(fèi)用科目,固定資產(chǎn)發(fā)出計入固定資產(chǎn)科目,兩者需要分開進(jìn)行收入、發(fā)出和結(jié)存的核算。而電算化系統(tǒng)未能根據(jù)實際情況,只能設(shè)置一個倉庫,并且只能提供匯總的入庫、出庫和結(jié)存報表,不能單獨反映其中固定資產(chǎn)的收發(fā)存情況,其中的材料收發(fā)存情況也不能單獨反映。因此,以往在發(fā)生有固定資產(chǎn)收發(fā)業(yè)務(wù)的月份里,只能生成和打印出材料和固定資產(chǎn)匯總后的收發(fā)存報表。而其中固定資產(chǎn)的收發(fā)數(shù)量和金額只能通過手工計算和書寫的方式,填到收發(fā)存匯總表中,并且需要重新計算材料部分的收發(fā)數(shù)量和金額。
存貨核算模塊中收發(fā)存報表是按照存貨編碼排序的,而倉庫管理人員制作的報表是按存貨代碼順序排列的,兩者存在著許多不一致的情況。在審核較對收發(fā)存報表時也存在著順序的不一致性。
1.實現(xiàn)原材料和固定資產(chǎn)分開報告發(fā)出數(shù)量。為了使原材料和固定資產(chǎn)分開填制報表,首先分析固定資產(chǎn)存貨代碼的規(guī)律性。即其中發(fā)出的固定資產(chǎn)存貨代碼第一段是以數(shù)字“18”開頭的,其余數(shù)字開頭的存貨代碼都是原材料。那么,只要將以數(shù)字“18”開頭的存貨代碼提取出來,生成新的報表,也就是固定資產(chǎn)收發(fā)存報表。余下的材料經(jīng)過重新匯總計算后,就是原材料報表。
存貨核算模塊中的收發(fā)存報表也提供了導(dǎo)出功能,先將其導(dǎo)出至電子表格EXCEL工作表中。接下來是進(jìn)行排序,與前面審核時對流水賬的排序相同,也是對收發(fā)存報表中存貨代碼一列進(jìn)行代碼拆分,然后以拆分后的四段代碼數(shù)字作為關(guān)鍵字進(jìn)行從小至大排序。經(jīng)過此番操作之后,收發(fā)存報表整體順序與倉庫管理人員上報的收發(fā)存報順序就一致了。然后編寫以下代碼(限于篇幅只列出主要代碼):
并將以上代碼插入VBA模塊,運(yùn)行以后,固定資產(chǎn)報表數(shù)據(jù)就保存在工作表“GDZC”中。這樣就實現(xiàn)了原材料和固定資產(chǎn)收發(fā)存分開報告,避免了手工重新計算的弊端。然后編寫報表格式的代碼,并將其打印出來,進(jìn)行總賬模塊核算處理。
2.實現(xiàn)出庫報表和收發(fā)存報表的統(tǒng)一處理。存貨核算模塊中收發(fā)存報表與按部門出庫分開兩張報表,造成審核報表時需要核對兩次,同時也存在著順序不一致的情況。通過導(dǎo)出功能將出庫匯總表導(dǎo)出至EXCEL工作表中,編寫相應(yīng)的代碼,將每個材料目錄的各部門發(fā)出數(shù)復(fù)制到收發(fā)存匯總表中,實現(xiàn)每種材料和固定資產(chǎn)的期初結(jié)存、本月收入、本月發(fā)出、期末結(jié)存以及發(fā)出至各部門的數(shù)量和金額的聯(lián)合報出。這樣處理之后,審核收發(fā)存報表時,材料目錄順序和報表內(nèi)容、格式就可以一次性完成審核過程。
為了進(jìn)一步提高工作效率,系統(tǒng)地將審核出入庫單據(jù)、收發(fā)存匯總表排序、導(dǎo)入出庫部門數(shù)據(jù)、生成收發(fā)存報表和生成打印表格等,將EXCEL VBA代碼整合成連續(xù)的小模塊,并分配相應(yīng)的控件按鈕。實際操作時,只需從存貨核算模塊導(dǎo)出流水賬、入庫匯總表、出庫匯總表和收發(fā)存匯總表,然后依次點擊右圖從“第一步:”至“第九步:”的按鈕,而不需輸入任何賬務(wù)數(shù)據(jù),即可完成出入庫單據(jù)的審核、原材料和固定資產(chǎn)收發(fā)存報表的生成和打印輸出。
會計電算化系統(tǒng)雖然有高效、完整的特點,但也存在著某些不靈活、不能滿足實際需要的弊端。為了處理好這一矛盾,應(yīng)該運(yùn)用電算化系統(tǒng)的數(shù)據(jù)導(dǎo)出功能,并且充分利用電子表格EXCEL及其VBA編程環(huán)境的功能,彌補(bǔ)電算化系統(tǒng)的不足。只編寫少量的代碼和導(dǎo)出數(shù)據(jù),不需手工輸入任何財務(wù)數(shù)據(jù),就能達(dá)到快速、準(zhǔn)確、高效地完成財務(wù)核算工作的目的。