[摘 要]备用金管理是会计日常业务之一,本文针对备用金管理中存在的问题,通过运用VBA程序实现Excel表格中的一些功能,使得备用金冲账及结算业务变得简单清晰,节省了会计人员的时间和精力,同时也为借款人理清了思路.
[关 键 词]备用金;Excel;VBA
doi:10.3969/j.issn.1673-0194.2012.20.004
[中图分类号]F232[文献标识码]A[文章编号]1673-0194(2012)20-0007-03
在日常会计报账中,备用金冲借及余额查询是每个单位不可避免而且很频繁的业务,随着经济业务内容及进展不同,借款及冲账次数逐渐增多,时间稍长,借款人往往都搞不清自己哪些冲了,哪些没冲,报账会计面对众多的借款者查账、对账、报账、审核报账单等工作,往往疲于应对,尤其是到了年底决算的时候,会计业务增多,时间紧的情况下,这一问题显得更为突出,经过摸索发现在实际工作中通过Excel就可解决这一问题,以下简述解决的方法步骤.
1方法简述
用Excel表格做备用金结算单如表1.
按表中栏目只需填写冲账内容及分项目小写金额,摘 要按箭头下拉菜单选择,合计栏就会自动出现大小写合计金额,鼠标点击借款金额处,就会出现如图的输入窗口,在此窗口中只要输入借款金额和实收两项,报销金额、应付金额、结欠金额就会自动计算出现.
通过以上简单操作,可以发现报账会计一方面可免去报销单据大小写不一致及摘 要规范性审核,另一方面不需重复为报销人查备用金余额.
2实现表格内容的程序
以上表格中的内容通过Office中的VBA编写以下程序就可实现
PrivateblWAsBoolean,blJAsBoolean
FunctionConverUpper(ByValCAsDouble)AsString
DimTAsDouble,GAsLong,SAsString,DAsInteger
IfC=0Then
ConverUpper="合计(大写)"
ExitFunction
EndIf
IfC<0.1Then
ConverUpper="合计(大写)"&UpperC(C*100)&"分"
ExitFunction
EndIf
IfC<1Then
blJ=False
ConverUpper="合计(大写)"&JF(C*100)
ExitFunction
EndIf
G=Int(C/10000)
blW=False
IfG>0Then
T=C-G*10000
Else
T=C
EndIf
D=(T-Int(T))*100
T=Int(T)
IfG>0Then
S=Conver(G)&"万"
blW=True
EndIf
blJ=False
S=S&Conver(T)&"元"
ConverUpper="合计(大写)"&S
IfD=0Then
ConverUpper=ConverUpper&"整"
Else
ConverUpper=ConverUpper&JF(D)
EndIf
EndFunction
PrivateSubWorkbook_Open()
Range("C3")="结算日期:"&Year(Now)&"年"&Month(Now)&"月"&Day(Now)&"日"
Range("E5").Value="1、借款金额/元"
Range("E6").Value="2、报销金额"&Format(Range("D12").Value,"#######0.00")&"元"
Range("E7").Value="3、应付金额/元"
Range("E8").Value="应付/元"
Range("E9").Value="结欠金额/元"
EndSub
PrivateSubWorkbook_SheetChange(ByValShAsObject,ByValTargetAsRange)
DimGAsDouble,VAsDouble,strUpperAsString
IfTarget.Column<>4ThenExitSub
IfTarget.Row<4ThenExitSub
IfTarget.Row>11ThenExitSub
OnErrorGoToEX:
G=Target.Value
V=Range("D12").Value
Range("E6").Value="2、报销金额"&Format(CStr(V),"#######0.00")&"元"
Range("A12:C12").Value=ConverUpper(V)
ExitSub
EX: