温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
医院
固定资产折旧
方法
用Ecxel实现医院固定资产折旧的几种常用方法
王云峰1 徐喆1 张宗利2
(佳木斯大学 附属第一医院1 信息电子技术学院2,黑龙江 佳木斯 154002)
摘 要 医院固定资产折旧是医院财务管理中的重要内容,使用Excel软件可以快捷、准确地实现医院固定资产折旧。本文作者介绍了实际工作中使用的几种常用方法。
关键词 Excel;固定资产;折旧
1 引言
固定资产是医院开展医、教、研活动所必不可少的基本物质要素,也是医院赖以生存和发展的重要资源之一。对医疗设备进行折旧管理,是保证医院固定资产不流失、保障医疗技术水平提高的重要措施。特别是在医疗设备的折旧管理方面,各个系统、各个地区、甚至于每个医院都有自己独立的一套管理办法,在具体的实施过程中,又经常变动。即使在一个医院中,标准也很难做到统一,造成了许多管理上的矛盾。由此可见,采用一套先进、科学的折旧核算方法,对推动各级医院的建设和发展,具有相当重要的意义。
Excel是财务管理中的一种软件,因其提供给用户的函数及VBA程序设计功能而受到用户的好评。本文作者将利用Excel实现固定资产折旧的几种方法进行了总结,希望能对各位同行有点帮助。
2 双倍余额递减法实现固定资产折旧计算
双倍余额递减法是指在不考虑固定资产预计净残值的情况下,根据每期的期初固定资产原值减去累计折旧后的金额和双倍的直线法折旧率计算固定资产折旧的一种方法。固定资产通常按月计提折旧。在实际工作中,采用双倍余额递减法计算折旧时,为了简化计算,通常按年计算折旧额,然后根据年折旧额除以12计算月折旧额,最后两年改用直线法[1]。
应用双倍余额递减法时,应采用下列公式计算:
年折旧率=2÷预计使用寿命(年)×100%
月折旧率=年折旧率÷12
月折旧额=每月月初固定资产账面净值×月折旧率
在固定资产使用后期应进行判断,如果采用直线法计算的折旧额大于该期继续使用双倍余额递减法计算的折旧额时,则应改用直线法计提折旧[2]。
3 用Excel实现双倍余额递减法折旧的几种方法
在实际工作中,对医院固定资产进行折旧计算时多采用这种方法计提。例如,医院一项固定资产原价为100万元,预计使用6年,预计净残值为5万元,按双倍余额递减法计提折旧。
3.1使用Excel公式手动建立双倍余额递减法计算的计算模型
使用Excel建立双倍余额递减法计算的计算模型,具体步骤如下:
(1)在Excel中建立一个工作簿,命名为“双倍余额递减法计算固定资产折旧额模型”。
(2)建立如图1所示的“双倍余额递减法计算固定资产折旧额模型”框架。
图1 双倍余额递减法计算固定资产折旧额模型
(3)输入有关折旧计算公式,具体公式输入方法如下:
①在C3单元格中输入公式“=2/B3”,计算出月折旧率;
②在B6单元格中输入公式“=A3”,在C6单元格中输入公式“=B6×C3”,在D6单元格中输入公式“=C6”,分别计算出固定资产使用第一个月月初折余价值、应计提的月折旧额和累计折旧额;
③在B7单元格中输入公式“=$B$6-D6”,在C7单元格中输入公式“=IF(B7×$C$3<($A$3-$D$3-D6)/$B$3-A6,($A$3-$D$3-D6)/($B$3-A6),B7×$C$3)”,在D7单元格中输入公式“=D6+C7”,分别计算出固定资产使用第二个月月初折余价值、应计提的折旧额和累计折旧额。
(4)采用公式复制的方法(可采用鼠标拖动B6右下角的黑十字的方法)将B6中的公式复制到“B8:B78”,用同样的方法将C7中的公式复制到“C8:C77”,将D7中的公式复制到“D8:D77”(如果使用寿命更长,可继续向下拖动到合适的位置),这样就可以计算出各月月初折余价值、月折旧额和累计折旧额,由此可以得到一个双倍余额递减法计算固定资产折旧额的模型。
3.2 利用Excel中函数进行计算
在EXCEL中,有两个函数可以用于双倍余额递减法的折旧计算,DDB()和VDB(),DDB()函数称为双倍余额递减函数,而VDB()函数称为倍率余额递减函数。
DDB()函数需要在当双倍余额递减法计算出的折旧额小于按直线法计算额时,用手工转换成直线法;而VDB()函数不仅可以计算出双倍余额递减法应提的折旧额,而且可以进行直线法的自动转换,在本模型中,采用VDB()函数。
VDB()函数的形式是:VDB(cost,salvage,life,start_period,end_period,factor,no_switch)
Cost为资产原始价值;
Salvage为预计净残值;
Life为预计使用年限;
Start_period为进行折旧计算的起始期间,Start_period必须与life的单位相同;End_period为进行折旧计算的截止期间,End_period必须与life的单位相同;
Factor为余额递减速率(折旧因子),如果省略参数factor,则函数假设factor为2(双倍余额递减法)。如果不想使用双倍余额递减法,可改变参数factor的值。
No_switch为一逻辑值,指定当折旧值大于余额递减计算值时,是否转用直线折旧法。
如果no_switch为TRUE,即使折旧值大于余额递减计算值,Microsoft Excel也不转用直线折旧法。
如果no_switch为FALSE或被忽略,且折旧值大于余额递减计算值时,Excel将转用直线法提取折旧;
除no_switch外的所有参数必须为正数。
针对前面的例子,双倍余额递减法采用EDB函数计算第三年应提的折旧额,公式为:
VDB()函数的形式是:VDB(1000000,50000,6,2,3),Start_period为2, End_period为3,factor及no_switch均省略。
3.3 利用“宏”在EXCEL中建立一个固定资产折旧计算模型
3.3.1 模型的建立
(1)打开一个工作薄文件,在工作表SHEET1中建立表头及基础数据区域。
(2)建立数据区。由于各种固定资产的使用年限是不一样的,我们无法建立一个固定的数据区域,只能先建立一个只有二行的数据区,并仅设定两行的公式,后面将利用VBA自动根据固定资产的使用年限调整数据区。为了使公式能正确计算,先在原始数据区域中输入模拟数据。
(3)设定宏。右键单击工具栏,选择“窗体”,单击命令按钮,然后在工作表相应位置拉出一命令按钮,在指定宏的窗口中将宏名改为“重新计算”并选择“录制”,在录制新宏窗口中选择“确定”,什么都不用做,按停止键,在按钮上按右键,选“文字编辑”,将按钮上的文字改为“重新计算”。用同样方法建立按钮,把按钮上的文字改为“清除数据”。
(4)编制宏所对应的代码。当固定资产的使用年限发生变化时,模型必须能自动增加相应年份的单元格,并将公式进行延伸,最后还要算出合计数。模型中用VBA来解决这个问题。
VBA(Visual Basic for Applications),指VB在OFFICE中的应用,需要编写VB的代码,右击工作表上刚建立的按钮,选择“指定宏”,再选“编辑”进入Visual Basic代码的编辑窗口,在“Sub重新计算()”“和End Sub”之间输入以下代码(代码输入过程中的所有符号均应在英文半角状态下输入,&&及&&后的文字是每条语句的注释,不用输入):
life“=A7:A”+Trim(Str((Va(lRange“(C4”).Value)+6)))&&根据C4中的使用年限确定年份区域的大小,并把区域定义为变量life;
life1“=B7:B”+Trim(St(r(Va(lRange“(C4”).Value)+6)))&&确定直线法的区域,并定义为变量life1;
life2“=C7:C”+Trim(St(r(Va(lRange“(C4”).Value)+6)))&&确定年数总和法的区域,并定义为变量life2;
life3“=D7:D”+Trim(St(r(Va(lRange“(C4”).Value)+6)))&&确定双倍余额递减法的区域,并定义为变量life3;
Range“(A7:A8”).Select&&选择区域A7:A8;
Selection.AutoFill Destination:=Range(life),Type:=xlFillDefault&&对变量life中的区域进行年份的自动填充;
Range“(B7:B8”).Select
Selection.AutoFill Destination:=Range(life1),Type:
=xlFillDefault&&对变量life1中的区域进行直线法公式的自动填充;
Range“(C7:C8”).Select
Selection.AutoFill Destination:=Range(life2),
Type:=xlFillDefault
Range“(D7:D8”).Select
Selection.AutoFill Destination:=Range(life3),Type:=xlFillDefault
total“=A”+Trim(Str((Va(lRange“(C4”).Value)+7)))&&定义“合计”二字的位置,存入total变量;
total1“=B”+Trim(Str((Va(lRange“(C4”).Value)+7)))&&定义直线法合计数所存放的位置;
total2“=C”+Trim(Str((Va(lRange“(C4”).Value)+7)))&&定义年数总和法合计数所存放的位置;
total3“=D”+Trim(Str((Va(lRange“(C4”).Value)+7)))&&定义双倍余额递减法合计数所存放的位置;
total4“==Sum(R[-”+Trim(Str(Va(lRange“(C4”).Value))) +“(C:R[-1]C)”&&求出合计数;
Range(total).Select&&自动选择total变量中所指定的单元格;
ActiveCell.FormulaR1C1=“合计”&&填入“合计”二字;
Range(total1).Select
ActiveCell.FormulaR1C1=total4&&填入提取折旧的合计数;
Range(total2).Select
ActiveCell.FormulaR1C1=total4
Range(total3).Select
ActiveCell.FormulaR1C1=total4
“在Sub清除数据()”“和End Sub”之间输入以下代码:
clearvar=“A9:D”+Trim(Str((Val(Range“(C4”).Value)+7)))&&定义欲清除的区域;
Range(clearvar).Select&&选择欲清除的区域;
Selection.ClearContents&&清除Range“(A1”).Select
在声明段输入下列代码:
Private life,life1,life2,life3,total,total1,total2,total3,total4,clea