[摘要] 本文討論如何利用Excel的VBA實現詢證函的自動生成,介紹了具體實現辦法。
[關鍵詞] 應收賬款;內部控制;措施
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2011 . 07. 011
[中圖分類號]F239.43 [文獻標識碼]A [文章編號]1673 - 0194(2011)07- 0020- 02
1前言
詢證函是由公司以公司名義或審計師(或其他鑒證業務執行人)以被審計者的名義向公司(或被審計者)的債權人和債務人發出的詢證函,用以檢查特定日期債權或債務的存在和權利或義務。按照審計準則的規定,所有的銀行賬戶,包括審計期間內銷戶的賬戶都應當進行函證,對于重要的往來對象應當予以函證。公司加強管理時也需進行函證。根據被詢證人的不同,詢證函可以分為銀行詢證函、企業詢證函、律師詢證函、其他詢證函。詢證函是審計師審計工作底稿的重要組成部分,也是公司加強款項管理的重要依據。但是,填寫詢證函是一項煩瑣的工作,如果能通過計算機自動生成詢證函,將大大減輕工作人員的工作,提高工作效率和質量。本文主要討論詢證函的自動生成辦法。
2詢證函生成辦法
詢證函的設計服從于企業管理或審計目標的需要,同時方便公司人員或審計人員的操作。本文以Excel為工具,通過VBA編寫審計人員填寫往來詢證函的自動生成工具。
首先,設置3個工作表,分別命名為“模板”、“往來信息表”、“詢證函”。其中“模板”用于設置詢證函的格式(如圖1所示),“往來信息表”用于設置需要函證的單位信息(如圖2所示),“詢證函”為最終自動生成的詢證函。
設置完“模板”和“企業信息表”后,我們開始編寫實現生成詢證函的宏。具體內容如下:
Sub 詢證函()
Dim d As Range
Dim totalrow, c, e, f,i,j
totalrow = 300′設置往來單位個數
c = 1
m = 1
For f = 1 To totalrow
If Worksheets("往來信息表").Range("b" & f + 4) = "" Then
Exit For
End If
If Worksheets("往來信息表").Range("b" & f + 4) = "√" Then
Worksheets("模板").Range("A3").Formula = "致" & Worksheets("往來信息表").Range("c" & f + 4) & ":"
Worksheets("模板").Range("d2").Formula = "發函編號:" & Worksheets("往來信息表").Range("a" & f + 4)
End If
′設置詢證函表體內容,內容來自“模板”工作表
Sheets("模板").Select
Range("A1:d8").Select
Selection.Copy
Sheets("詢證函").Select
Range("a" & c).Select
ActiveSheet.Paste
Range("a" & c).RowHeight = 31.5
Range("a" & c + 1).RowHeight = 27
Range("a" & c + 3).RowHeight = 120
Application.ScreenUpdating = True
Sheets("詢證函").Select
Range("a" & c + 1).Select
Application.ScreenUpdating = False
c = c + 8
′載入往來單位信息
For e = 1 To 3
i = Choose(e, "d", "e", "f")
j = Choose(e, "b", "c", "d")
If Worksheets("往來信息表").Range(i & f + 4) <> "" Then
Worksheets("模板").Range(j & 9).Formula = Worksheets("往來信息表").Range(i & f + 4)
Else
Worksheets("模板").Range(j & 9).Formula = "無"
End If
Next
Sheets("模板").Select
Range("A9:d9").Select
Selection.Copy
Sheets("詢證函").Select
Range("a" & c).Select
ActiveSheet.Paste
c = c + 1
′設置表體的簽章等內容
Sheets("模板").Select
Range("A10:d26").Select
Selection.Copy
Sheets("詢證函").Select
Range("a" & c).Select
ActiveSheet.Paste
Range("a" & c + 1).RowHeight = 39
Range("a" & c + 14).RowHeight = 39
c = c + 17
′插入分頁符
Range("A" & c).Select
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
′一個單位的詢證函生成完畢
Next
End Sub
通過運行以上宏代碼,最終形成的詢證函如圖3所示。利用Excel自動生成詢證函,使審計人員擺脫了煩瑣的重復勞動,提高了工作效率和質量,對審計人員具有極大的幫助。