《Excel财务建模.docx》由会员分享,可在线阅读,更多相关《Excel财务建模.docx(51页珍藏版)》请在课桌文档上搜索。
1、第1章概论本书旨在为悠提供一系列帮助您开发.利用和维护EXCe1.模型的工具,财务模型的建立通常被看作只是商会计敛字的游加或者是进行这种添如的方法。但是.本书将会给箧展示精良的芝立财务模型的实践操作;提供一些不同的技术要领并会给您精选出一些模型的横板.本书并不是一本EXCe1.使用的工具书,因为关于这一方面巳经有很多深入的手册了,更确切地说,本书是对一些技术的栽述以便为您节省时何,帮助您在财务管理方面变得更为有效率。1.1、 什么是财务建模财务建模涵嫉了一个很宽泛的钺域:从简单的制表到费用的加总再使之转变为工程所SF的复杂的风险模型。此外,模型的设计运密要考底彳艮多其它的方面“具体地说,关于财
2、务窿模我们必须考定: 针时具体商业问迩的解答速立特殊的操作程序。如现金流量表及其易变性: 对数据进行分析处理: 将未来因素纳入模型考虑,对未来的情况进行考察; 将数据快速准瑜地转化为管理信息: 在一个“平安”的环境中测试假设,如工程方案; 通过一种结构化的途径来支持管理决策: 更准确地认识问题中的相关变量和规则; 更多地了解变量的变化过程及其变化方式: 我出关键受量并考察其敏感性。1.2、 电子表格的历史电子表格被应用于个人电脑是从20世纪70年代晚期Yisi(1.c(专为苹果机使用的一种操作软件)的使用开始的.由于这种工作表的高效率和措确性,使之在大苑囹内迅速取代了一些早期的方法(如高速计算
3、机),同时,1.otUS1.-2-3的使用与IBM个人电桶的使用也同步增加。从此财务管理者也能用他们自己的教抠来迸行分析而不用求助于其它效据系统或是系统管理员了。会计模型,如顼算和现金流I1.能根据用户的要求进行建立,这就导致了: 有史详细的信息用于决策制定: 使在较低层次的决策制定成为可能: 对特定环节的检险或其他替代方法之间具有灵活性.1995年,微软在APPIeMaCintosh引入了EXCeI并在20世纪80年代后期将它扩展到个人电脑上/indous3.0板本引入包含了Exce1.的OffiCe95,皮普它的快速增长,Exce1.成为了工作表操作软件中的银头羊,被大多数个人电IS用户所
4、使用。在成功开发OffiCC97和OffiCC2000后,衔较在这一钺域的占有率又被大大潦罡.1.3、 工作表的功能Exce1.包含于微软工具包之中说明它现在是一种公认的标准,就如同人们把Uord作为文字处理的标准格式一样.伴随着以下功能的参加,它的工作表的功能不断的加强: 专业的函数: 大量使得工作表自动化的宏程序的使用,或者说用编码进行公式输弊功能的使用; 工作簿技术的使用,省去了单个工作表之间的联系的建之: 对YiSUa1.BaSiC的使用提供了一种与微软其他应用程序之间适用的话盲: 同其他应用软件之间的数据交换功能: 添加例如关于目标区和最优化问题的规划求解模型; 三局部分析包,如财务
5、CAD.aRISKorCrysta1.Ba1.1.今天对这种复杂分析软件包使用的结果是使程那些非专业程序员也能设计并族立起一妾专业的解决商业问即的应用程序。Exce1.也是这样一种分析软件包.大局部人在他们需要解决一个商业问趣的时候都会使用它。作者普羟有一个这样的足历,需要对一个工程的租赁可盈利性迸行研究,并要编写一个模型来考察不同的基金组合决策,在消耗了大量的时向和精力后,这个模型终于成功运行并给出了一个答案。但是,这个答案很不清整而且也不方便其他人去理解.这里并没有模型设计的方法论,而模型真的就那样“蹦出来了”.许多公司或学院很少会提供如何使用EXCe1.来处理财务问黑的指导,这对于大多数
6、的管理者来说是司空见惯的了。这种做法的后果是许多候型戏立梆很少或者根本就不考虑模曳的设计和模型未来的缰护。更进一步地说,据估计很多商业上正在使用的模型本身都存在着严重的蜡误.用ViSUa1.BaSiC和O+来辐写应用程序是为IT部门进行设计提供的。但是.通常情况下,Exce1.并不受这些影晌因亲的制约.这可能并不总是个问题,但是,一个预算模嵬可能成为财务管理老臼己的“宠物设计.而他可能会在此后离开这家公司或者可能被提升到新加坡去了.在文件里当然不会有在释,这样,就再没人能了解这个模型是如何工作的.人们经常说信息就是力步,但是因为这些管理者常常不能将他们的工作充分的备案,所以导致公司在模里的审核
7、和错误的娈找上不得不花费大量的金钱.这样看来,Exce1.的简洁可能也成力了它的一个弱点.作者强谓:EXCe1.的使用者应该按照简单设计的步寰进行.并且注意对于操作模型相关背景信息提供的必要性。在这样的方法的指导下,现在你在方案上花的时间将从长远来说为悠提供超狈收登: 可提作性和使用轻松: 可缗护性; 对于答案和结果的信心,在接下来的章节里,我们将会详匆地说明如何综合运用Exce1.模型.来制作功能更强大、更有活力的工作表.1.4、 本书的目标本书的目标就是展示一系列的EKCC1.在财务建模方面的应用这一系列的应用出囱于一位致力于将公司财务理论应用于工作表中长达10年之久的非程序通写员.窿模带
8、要了第如何用EXCeI建立模型,并且耨财务知识和设计与EXCe1.结合在一起,特别是: 设计方法和设计过程: 怎样将设计想法变成应用中的模型: 改良现有模型的有用技术: 使自单的模型更有用、更可靠: 如何参加风险分析技术; 利用最优化和目标策略: 将所用的技术给合戌一个标准和模板.操作者们需要将对工作表技术作为核心技能来理解。现在的公司掌握告越来越多的数据而且需要用一些低水平的简单分析工具。通过空立模型,操作者可以更好地了解: 单个变量如何变动: 怎样去找出应该包含在计算中的能支*: 怎怦别离出对未来测试的关键变量: 如何通过方案测试和案例分析来昉止代价昂贵的错误.奉一个例子,通过对某些会计模
9、型的替换而建立的向单的外包模型可能显示一个正的净现金流量.一个正破跖立的模型不仅能找到答案,而且能: 列出所有的规则和输入: 提供基于不同参数值的一系列结果: 提供关健变量的图表,用来显示它们对于挂他变量变动的弹性: 列出风险和不确定性的水平: 显示有多大的可能性你将会得到很测的诘果.因比,水书的目的是应用EXCeI和附务知识杷二者结合起来,帮助你经立更强大.更有活力的工作表.1.5、 工作表举例图1-1是设计工作表的一个反面例子.这张工作表可能是你用来显示一个工程的净现金流量的,这是在许多公司里使用的众多工作表中比较典嵬的一个例子,它存在一系列的问题.我们将在下面一一给出。这个模嵬是光出中命
10、名为SiHPIeMOde1.XIS的文件.B31-1(原书第7页f.81.1)它的主要问题可以归结为: 没有把对输入、计算,输出的布局设计清楚她标明; 没有输入局部,不知道模型中的变量有贸些: 没有就输入进行特别看色: 没有用边椎和阴影来增强报告的外观: 没有对输入数据的有效性进行限制,例如,确保输入数据具有正确的类型和数据长度: 将不同小数位数的数字格式混合在一起。方括号和红颤色的使用1.增强此模型,因为方括号很容易在打印出来的报告上被识别,而且红色一般是负数的彘色: 将数字和公式混合在一起.第10行中的税领计笄将税率对于每一个单元格都固定.如果税率发生变化怎么办? 单元格GIo中有一处计算
11、错误,单元格本应该是输入公式,但是输入的却是数字: 公式测试显示单元格B1.o和B17中是直接输入敕字而不是利用公式计算,当贴观率或税率发生变动时候,数值不会随之发生变化: 没有根据结果辞出的操作报告。5.411是否已好是满足了操作的底块: 蚤件格式化能将转果注重显现出来,例如,这个单元格的独包将根据错果确定; 没有函数的使用,因为净现值是使用每个时期的变量值进行计算得出来的。ittftf1.NPV函数可以减少时每个单元格的状值,从而减少可能出现的数字钳误: 没有敏感性分析,当改变贴现率或者没有按方案形成利洞会有什么情况发生? 图表一般用来显示管理现金流量或者显示敏感性分析.例如,一个累计现金
12、流量表表示的是可获得的回抵: 没有对关键变量迸行特别命名: 工作表没有分开显示,下面的表格中计算了设备的税收折旧,但是这并不清楚它是不是现金流量的一局部: 没有对单个单元格的批注,也完全没有对整个模型如何工作进行说明: 作者没有劝数字做出解释的信息: 这个模型不适合打印.模嵬没有页眉和页脚指示,例如,文件名和辐写日期。打印要输出包括税收在内的所有结果.以上的列表从模型戏立的结构、设计和方法上罗列了这个模型的缺点。如果借理者做出的所有决策都是基于这样的一类表格,他很有可能会做出培误的决策.即使是很快做出来的,这个模型也因为存在计算借误而失败,如果使用这样的工作我进行管理可能会造成许多产量的失敢,
13、但在对这个模里更新设计后,可能会纠正这些错误.建立正琐的模型可以防止很多类1.的错误.1.6、 小结Exce1.的使楞是操作者的核心技能.Exce1.是一个功能强大的工具,但是,极少数的用户接殳过正规的模型技术的培训.本章近给出了一个简单的工作表及其在设计和构窿方面包含的错误。在接下来的章节里,我们会窿烟挈领地介绍如何应用隹里来建立有活力和可以维护的工作表.笫2章模型设计导论在第一章里,我们已经看到了传统的模型设计的缺陷之处.这种传统设计从本质上说只是将EXCe1.用作一大坦自动化的会计文件。如果我们的目的是依据EXCCI做出决策或者我们要完全依敕于这个结果,那么我们必须采用一种不同的途径,一
14、种更专业化的途径.这种途径更多地关注目标、用户报告和结果的产生过程.S2T慨括了设计中的几个阶段。B2-1模型设计1、所有桢型和遵循一定的设计程序和方法:2.糙定目标而对强:3、破定用户需求和必要的用户交流:4、列出关情变量和规则;5、格计算分修成若干个可操作的群组:6、制作出单个模板:7.列出某单结构:8、管理报告和小结:9、模型开展如灵氧度分析:10 .测试和审核:11,应用操作的保护;12 .备案:13 .征求同行的意见。1.1、模型设计基础设计是个性化的.你开发出自己认可的.欣赏的模型风格,你就能轻而易举地将其市复运用。这听起来可能很简单,但一个正俄实用的设计方法会大大缗短模型设计会错
15、误纠正的时间,设计的必要性取决于应用的复杂性,你必须对不同种荚的工作表采用不同的方案和方法。在模型设计中,你可能想要屡次的插入行或老是谢年列,又或者是在工作的某个阶段想要了解一个具体单元格的公式如何运行.想要做到不用多考庄就能正确地使用关键的公式其实是倒5?单的。清楚地列出需要考虑的事项能够便f更好的谀讨模型。所右的模型设计和建转观一的设计步班和方法,井且工作表也遣砧一定的设计格式.本书中的例子亳无疑问池是按飕这样的原则编排和没计的,对于一个人来说,篇单的工作表就可能转用,而模型的设计也必须杵合简单的规则,特别是梗型会被其他人使用或者被合并用于决策的制定。隹基础的格式中,这就意味着要挎模型中的
16、功能划分成输入、计算和输出三个区域.2.2、 对象很多人并不对对象和目标进行深入地专定.尽管下面说的听起来很端单,但是这样做瑜实是有益的:将对象和目标记录在文件中,并在模型设计的过程中不时地进行参照以保证你并没有偏夷最初的想法。模型常常能给我们提供更多的信息,但在很多例子中,由于答案阳藏在计算中,所以我们很理荻取信息。举个例子,一个葡单的现金流量的预算也能更深地用于记录实际的损益表和资产负债表.守了侦算的和实际的数字,在他对数和相对数差异墓础之上的芟异分析强生就可以和管理报各还有图表一定形成单个的报告.2.3、 用户界面这个济要很仔细的核衣,因为这一项索要你和你的用户一起完成.也许对于同一个模
17、型会有许多不同的用户,他们对于输入、其他一些留节和信息有不同的要求。早期戏立的模型有时会轿变量放在左边.在标管和数字之问,例如机率.但是,用户可能希攻在同一个地方看到所有的输入,并且需要有关于在货里籍人数据和输入什么样的数据的提示与指导。通常,如果人们在拿到一份新的应用软件的时候,需要花费很长的时何去了解它如何工作和在什么地方输入数据,这样往往令人感到沮丧.Visua1.Biisic编程系统是通过先没计对话桂,然后对按钮赋子一段操作程序,对它进行控制并使之工作.对EXCe1.来说,借鉴这一做法也是有益的,这样既可以防止许多的模型设计者常常不能设身苑地的为用户考虑的情况发生,同时也更好的便于用户
18、去理解。这种对话框应该是: 立现的; 清楚的; 能Ia过提供符合爱情的信息来指导用户提作。多种边幅,颔色和格式的应用能够有助于这一过程的完成,就像在图2-2(Ca1.cu1.a1.or.x1.s)中显示的那样。用户根据提示箝变量赋值,并按下按钮来计算出一个答案,这就如同017BH那样的手持财务计算器一样.根据用户所按的按钮,计算出的结果在底部更阴笄显示出来。从图中可以看出,这一族信息是从上到下的全面显示.B2-2(原书第11JTfig.2.2)2.4、 关键变量及其规则对变量及其规则要分解设计,且必须把变量放在一起,就如上表显示的那怦.变量的值不是硬性编码的,这一点尤其重要。举个例子,如果频率
19、是用户输入值,当用户由季度支付变为月度支付,那么用户需要改变什么呢?将规则报燥出来傅味杳模型设计者能够组织有序地处理商业问题.而且的:够更简明地理解解决奇业问题的过程。在这个过程中,他们可能会发现一些需要纳入模板的新变量.规则也是排落更要的:公共税收在大多蚊的管理权限内是很复杂的,模型必须精瑜地反映出税盾和税收结算日期。公共机收的支传方法在英国正从年支付体系变化为四季度支付体系。这筑给模型设计者提出了新的挑战.他们必须了解4渡时期的安排和最终的安排,蛤主要的变量和模根命名的方法有助于简化现有模型的维护,2.5、 布局设计将计算分解成几个可操作的组,从而使模型的运转和结果清楚地显示出来。现在的E
20、xce1.可以将别高的工作表组合在一个二维的工作簿中,而不必象在原来的1.ou1.SI-2-3和EXCC1.做的那样.将一俎别离的工作表连接起来.我们不必将报装表、资产负债表和现金流量表放在同一个工作表中,而可以将这三张独立的表故在同一个文件中,这样的做法显然更符合袤辑规律。图2-3的例子把谀计分解为: 用户输入; 小结处理使更新后的输入可视化。这样做可以防止用户反复拉动谖动条来找结果: 计算区域使用上面输入区域中的变量进行计算: 结果显示: 灵敏,变分析、图表或其他维节: 在打印区域外的工作区域.模型中的信息流速循这样一种遗辑构架,正如用户所期待的那样,输入放在左上角。更复杂的模里可以将这些
21、区域放在不同的工作表中,但是甯要再次强调的是.侑入区域和计算不应该混合在一起,应该分成若干个逻辑区域。在图23中.针对不同的数据和信息,多种倾色.字体.模式和边幅的一致性使用能有助于显示它的爱情亚架.本书中的模型就遵循着这样的格式.图2-3(原书第13页fig.2.3)2.6、 个体模板在这样一个设计好的推架内,计算被分解到若干个可别离的区域或工作表中,个体模板也就相应产生了.布局的设计便于用户和模型设计者相模型的理解,这点是非常重要的.同时,布局设计财于日后深入地开发模型更是至关重要.计算区域必须而且仅能包括公式,而不能和数字退杂在一起.这样儆是为了黄保计算的完整性.例如.直接乘以0.3来计
22、算公司税额只能制造麻烦,因为如果机率发生变化,你就不得不把所有工作表中的内容和ViSua1.basic中的安代码找出来并进行替续,利用有一定输入范围的输入单元格,或者是用一个已命名的单元格意味告你只需要改动一个单元格.则整个文件将会准确地囱我更新.2.7、 菜单结构和宏菜单结为在复杂的根里中是很有用的,因为它: 将模型纳入到一种结构中: 便于用户理解: 通过按例连行浏览,这样比不停地在工作表中作标记更方便。图2-4(Menustructure,x1.s)中的模型运用了按钮或者说是俎合框连接另外两个名称为“Inputs和Reports”的工作表。这两张工作表中也有按钮能让用户再回我主菜单下。我们
23、将会在下一章节中洋掴潮於这些绮征。用户能迅速了密哪个工作表是可以利用的,而且也能被指引到需要数据的地方。B82-4(原书第14J,fig.2.4)2.8、 管理报告对于较大的模型,管理氟告和小培通常是必不可少的,它们应该在一个完整的管理黑告区域中.不是每一个人都需耍所有的细节和计算,小结可以帮助用户了解计算结果和荻取其中重要的信息.例如,一个工程管理的应用应该在模型中显示横流比率和证券化程度。2.9、 未来开展模型内在的开展是很重要的:一个颈算模型可能到下一年就需要漆加新的变量,而一个转构化的模型有助于模型未来的开展,我们可以通过查看如何停加新变量和审核设计中的漏洞来测试它的可开展性.此外.灵
24、敏度分析表和方案使得用户能在同一模型中奔到多方面的答案,并且在改变输入的基曲上进行差异分析.一个单一的净现值模型对于决策的制定是远远不够的,模31的开展应该包含一些更深入的对景终雄果8产生变化程度的测试。风险也是一个决定性的因素,因此模型的设计需要包含风险因素或模拟技术。模拟使得模型的开展包含一系列的输入而不仅仅是单一的数字,这样的输入就会得出相应的一组结果,类似地.图表隹向操作者或其他人显示结果上也是很有用处的。人们常常可以通迂图表轻易地理解复杂的东西.例如,一个现金流的模型包含在最低减教之上的现金流的图表.2.10、 测试测试是很有必要的,它可以确保没有计算上的错误和由模型得到的信息流是正
25、琬的。在图22的表播中,结果可以通过贴现率表或者用其他的财务计算器的结果来检验测试的金格必须要用到所有的按钮.脩入.频率、支付方式等.后面会有一个章节专门介绍一些用来检验模型准确性的技术.2.11、 保护如果模型会被别人位用,那么模型的保护就变得非常重要.如果作者将所有的软人都聚合在一起并且用不同的瓶色蛤它们“加密”,这种保护就交得很简隼。所有的工作表格都能被保护.对输入隼元格也可以不进行保护.保护工作表和工作簿其实也是保护了模型设计者的成果.并且这样做可以确保模型在设计者的意图下进行使用。例如,如果一个预算模型让用户使用,而用户却在单元格里棺入具体的数字而不是公式,由于没有对模型进行保护,其
26、后果是威胁到了模型结果的准确性。当然.其他人在使用的时候可能会从检登存一个单元格可能的错误开始。2.12、 备案许多作者嫌麻烦而不是写出一些关于工作表的说明和工作表的结构说明.这样做可能会面传这样的一种风险:他们或者他们的同事在日后对模型编号进行维护的时候可能会在某些方面遇到困难而许多模型也就因此成为了“宠物设计”.因为任何一个讨算机程序都需要相关的背景信息,理想的情况是将说明写迸慢里而不是写在文件的一小片纸上,并且要建细: 采用一个特定的设计或澳板的原因: 写出关键的公式和计算步兼; 规则和方法.2.13、 同行的意见模型的用户会同行们常常会而模型摄出犍设性的意见。尽管这个过程很痛苦,尤其在
27、你耗用的大量的时间来制造出这样一个杰作之后.但是,潜在的用户常要尝试输入数据并且对模型的操作方式是否人性化给出评判,让用户叁与到模型的设计过程,并且询问他们的意见能够充分调动用户的积皴性.这方面主要的因素包括: 有清楚地时话根,使用起来很方便: 用户操作指导,包括从筠入开始泾过计算最后得出答案和报告: 将审核和更正的复杂性降到炭低点: 结果显示的明蜥性.以上的13点将会帮助你更有序地工作.检交一下你自己的模型,看看在你的成果中包含了以上的我些方密.显然.模型的复杂程度影响着你所褥要完成的工作量。但是,以上这些是作者实践了很多年总抹出的经险,它们会帮助你更好的进行实践.我们在下一章节中会讨出几种
28、能使你的模型功能更强大的转征.1.后的章节会应用这些设计力法未受新独立第一章中的那个墓地模里,这样做的目的是为了向您展示如何应用Exce1.来建立功能更强大而没有错法的慢区。2.14、 小结模型的设计是个性化的,经过一段时间的工作.我们会形成自己的风格.设计的连贯性和漠循统一的设计方法是很It要的。本章对设计步聚的讨论并不是面面俱到的.主要包括了以下几个方面的内容: .嚏立所有的根里都要遵循的设计步券和方法: 成立目标和对象: 了第客户的转求和必要的客户交流: 选立关键变量及其规则: 将计算分解成若干个可操作的群限: 窿立个体模板; 设计菜单结构: 管理报告和小结: 模型开展,如,灵敏度分析:
29、 测试和审核: 应用操作的保护; 备案: 征求同行的意见.第3章将征和技术在上一章里,我们讨论了模型设计的方案和在谀计中的塑辑何题。本章将会省市介绍模型中包含的让用户感到更亲切的特征。本章不会把所有的特征一一详尽地列出,但本章所要到达的目的就是要指示景初的和最终的模型之间的差异。本章讨论的特征包括: 格式.: 数字格式: 框段和边框; 靛色和图案: 为输入和结果特别着色: 数据的有效性来控制输入; 控制一一对话推或按钮; 条件格式化来显示数据上的变化: 加伐宏,以增加更多的财务功能; 参加更多的财务公式; 文本框和更新标签: 记录版本序号、作者、开发时间和其他信息; 运用名琼以便使公式更便于理
30、翳: 将合名表作为备案的一局部记录: 单元格批注: 图和麦: 多样化的图表来显示个体线条; 用于美的度分析的数抠列耒: 条件分析(侬果-怎样); 单变量求第: 最优化和目标区的规划求解; 使用模板来加快模型开发。图3-1的模型是在文件FeatUresx1.s中.本章节中的每一局部都包含在这个模型里。翻开文件并依次点击来浏览工作表的制作运行.B3-1(原书第19K.图3.1)图3T是一个N单的净现值模型,这个模型把各期的现金流量以10贴现率折现后相加.在CM这个单元格中,净现值就是把折现后的现金流量相.加得到的。选择“工具(D”,”选项(8.“视图09”.你可以选择“初图值)”中的“公式(E)-
31、。这个选项能让你看到计算用的公式(见图3-2),你近可以同时按下“CtrI+在公式和通常的状态之间进行切换,正如你所看到的,它只是根据如下的现金流量的公式来计算净现值:PeriodFactor=J,、.J-+o%)ZjB3-2(原书第19页f1.g.3.2)酉3-3显示了每个单元格的公式B3-3(M4*M19Xfig.3.3)3.1、 格式图34中的隹里是将数据输入和公式计算法合在一起,因此我们的第一项工作就是有它的布局重新进行设计.这包括: 插入边根线并移动输入: 根据输入的现金流量进行计算: 在可能检查输入值的地方做标婺“例如B9=C3; 用一个输入来更正所有的因素: 用不同的字体来做出区
32、分。现在.标题、输入、摘要和结果就用黑体字清楚地做出来了.这4模型遵循了在图35中显示的布局。图3-4(原书笫20页fig.3.4)图3-5(原书第20页f1.g3.5)3.2、 数字格式多种数字格式同没有区分或是两种不同的小数点住数的设定是不一样的.点击“格式(0)”,“单元格(E)”,“数字”来改变默认的数字格式(见图3-6。图3-6(原带第22Jifi&3.6)你可以尝试一下自己定义不同的数字格式.正数、负数和复用半胃号来区分。方格中用了多件颜色.文字械引在双引号中.例如.年参加数字后格亢为:。年。你可以将你自定义的格式添加到格式框中也可以修改现有的格式(如图37).图3-7(原书第22
33、页fig.3.7)这个摘录说明这样的会计格式:正数在左边而负数用红色扣方板标出。零是破折号。这样的格式类里很容易被激光打印机识别,因为通资法号解堆祓识别为负数的标志.会计格式类型:_-#.仃0_-;红色(#.门0):_-*这样蹶的效果是控制数字视图中最多只有酉个小数点位.3.3、 框线和边框根段和边框有助于打破单元格的福码,并能让模型不管是在窗口显示还是打印输出后看起来更吸引人。最好将“格式(Qr保挣可视,选择“视图w),“工具栏(Ir,“格式先显示格式条(如图38所示).这就省去了每次都要到“格式(,”单元格(”,“边根”等地方去添加过庭,图3-8(原书笫23页f1.83.8)图3-9和图3
34、10显示的是如何通过应楞工具包中的边框来突出隼元格。细改加在单元格的同8J,用双根及显示总计。图3-9(原书笫24Jifig.3.9)图3-10(原书第24页fig.3.9)3.4、 颜色和图案醺色和图案的使用也可以被用来帮助定义侑入和输出。在图3-11中,非彩色用于表示输入,灰色表示答案.这些健色的使用是个性化的,但重要的是保持多种颜色和格式的一致性使用。3.5、 输入和结果的特殊颜色时侑入值特别着色可有助于显示在哪里需要输入数据“作者储常用段色表示输入.绿色成果色表示总计,红色或黑色表示计算结果(如图3-12所示r颜色的使用应该保守一些,因为尢过于炫耀的色会不合大多数人的口味。图3-11(
35、原书第25页f.3.11)图3-12(原书第25页f.3.12)对模型添加几种颜色之后,模型变得更加清晰.并且颜色的使用也迫使作者从一致性的角度考由杵缭入放在一起.现在的这个模型比原先的那个模型要有序的多,且更方便用户使用。3.6、 数据的有效性蛾据有效性的设置复办可以设定隼元格蚊格的界限。这样一来.如果你需要检入日期,那么用户只能椅入日期,或者当你需要揄入一列七个字的文本,用户也只有这么做才能继续往下进行。有效性的设置可以通过选择主菜单栏的“教抠(西”.有效性(1.)来没置.(如图313所示)图3-13(原书第26页fig.3.13)在这个例子中,最好对以下三个输入有个最小值的限制:费本价值
36、大于O的正数每期的现金流*大于O的正数站现率O和1之间的正数,如100V1.这个对话惟有三个标签,当缸标指铲拿近单元格肚会出现输入信息.若是精误的输入,会强出出精警告的对话箜,你也可以通过不选中转话娓来选择不显示输入信息(如图314所示)。图3-14(原书第27页fig.3.14)出楮警告显示的是你输入了一个错误的数字,并且在你遵守了散指有效性条件后才能继埃(如图3-15所示)。这意味着费本价值应该而且只能是个正数.S316(原书第27页Cg.3.16)由于年期的现金流量也符合同样的有效性约束岳件,你可以选择“复制(0”.然后在“编辑()”,“选择性梏砧回,有效性”来完成,而不用再一次的馍入有
37、效性约束条件.图3-16(原书第27页fi.3.16)最后的一个有效性条件只是简单的保证贴现率小于100So这样做是为了缩小输入的范围,也是为了让用户能得到正糙的答案.如果用户试图输入一个数值为120%的贴现率,那么将会出现如图317所示的那个结误依息。再次说明,这是从用户的角度来看模型的使用.井试图让用户知道什么是他要做的。3.7、 控制组合框和按钮更多的加速输入和帮助用户的条作可以在“视图.工具栏(D”,“控件工具箱中找到.在Assess或ViSUa1.Basic中都能找到类似的控制器.在这个例子中,你可能希望用户输入一个在展12%之间的贴现军,并且每个蚊字之间向隔(步长)0.5%.这样的
38、话我们就不可能利用数捱的有效性来进行处理.必须另爰他途.因为数据的有效性只是限定了数据的上下限。图3-17(原书第28页fig.3.17)第一步是先在工作表的底部开辟一块工作区域,然后通过剪切和粘贴将贴现率输入到区域中(如图3-18所示.这是为了确保在单元格C7中建立控制鞋的时候模型仍能正常工作.图3-18(原书第29页fig.3.17)工作区域显示了一个数值间隔,怵后砧现率从8%开始并且银次都按步长值增加。K3-19(*4129Xfic.3.19)最终的工作区域将显示从引到12%的贴现率(见图319)。步长值并不是固定不变的.它取决于隼元格C26的值。由于这些是变量,而大多数的用户梆不管要了
39、解这些细节,所以我们把它们放置在独立的工作区域并清楚的标明.组合板控制器中有八个可能的选择,它返回你所选择的序号.它会把序号返回到单元格C27中.点击“工具栏(Ir中的“俎合枢按钮,你就可以在单元格中画出俎合框.你必须给控件确定从那里萩取输入信息和在那里拊出结果.在图3-20中我们可以看出,贴现率的取值是在EB28=B35.结果的输出是在单元格C27中。B03-2O(Jf书第30Jifig.3.20)最后一步是在显示贴现率的单元格C28和显示序号的单元格C27之间建立链接,由于C28用于计算,需要将它的散色改成红色以免混清,函数“OFFSET”可完成这个功能,你可以在“插入(D”.“函数(E)
40、,杳找与引用“找到它(如图321所示).S321(原书第31页fig.3.21)通过这个函数,你可以先定义一个起始倒值,然后向下移动X行向左右移动丫列,最后得到另一个数值。在这个例子中,起始数值定义为单元格B27的值,并且向下移动的行数为单元格C27的值.没有左右移动.最终得到控制鞋所需要的数值用作贴现率进行现值的计算。这个纽合框可以控制用户的输入,并且使程对单个贴现率的选择更加迅速(见S3-23).特别常要说明的是.用户仍然可以在B27、C26.C27中物入数抠.这个坦合枢运行一个宏或依照程序更转单元格的数抠,但这并没有受到保护。在工具栏中同样迁有其他的控制器能使你的输入更直观.比方说,数据
41、调节器和凝动条就可以假你只通过点击就能够增加数值,并且还可以根据具体脩入变动的同段需要来设置点击移动的问隔。图3-23(原书笫32Jffig.3.23)工作表SPinneJSCroubar中应用了这两种控制性进行了替换探作。在那里,你可以选择一个最大值、最小值和增加值。这种操作会有一点点的复杂.原因是这个控制器没有分数,因此你就不得不从滚动条的位置来计算一下具体可能的贴现率.在图3-24中的滚动条的作用是取从1到8的数信并且以一个单位翌培。浜动条连接的单元格是C26.在华元格C27中的函数“01TSET用的是选择的序号。图3-24原书第33Jffig.3.24)3.8、 条件格式条件格式可以使
42、我们根据单元格的不同蚊值进行不同的单元格显示。这里的不同指的是字像、边应和图案的不同。在这个例子中,我们杵会引入一个很有用的操作试验来说明如果如何根据工程的成功与否来相应地显示结果,在用325中有一个新的单元格C7.它定义了进行操作性试检所需要的最低的净现值7.000.用格式按钮来设置格式,使得当现值大于或是等于单元格C7的值时.显示柳色.试验的常果在图326?展示,在图中可以看出9.5%的贴现率能使工程到达目标.S3-25(原书第34页fig.3.25)B3-26(JHJM34Mfig.3.26)你迂可以通过点击“海如(1)钝,并且选择“编辑()”.选择性粘贴(5),“格式”来复制,以便添加
43、更多的格式.3.9、 函数的使用以及各种类型的函数在模型中巳经便用了西数“OFFSET;但是,利用NPV公式金便净现值的计算变得更为简单.现在,从单元格C17到1119这个区域中的单元格都已炫被直樱赋值,这也就意味着可能会有12处借误存在。使用公式的目的就是为了减少直接联但以便残少潜在的藉误。这种利用Exce1.的侪决方法比查贴现平赛的方法要便利多了.你可以在主菜单栏选择“插入(1尸,“函数().,或若从标准的工具栏中找到所用语数.函数枝划分成几个局部以便查找。选择财务函数并找到NPY(见图327。B3-27(原书第35页fig.3.27)净现值公式可将等期的现金流贴现.然后要做的就是建弁1-
44、5年并从0期开始添加各期的现金流量,再利用公式进行计算。=NPV(C25,D15;II15)+15根据这个公式可以辨到贴现率为9.5%时正确的答案是7.511.85。注意到现在的工作表在进行了必要的就减后巳级变得更简洁了.你总是可以通过点击问号标示(如图328所示)来获取关于公式的帮助信息。你也可以通过选择登看来浏览一些替代公式的列表。图3-28(4*36Xfig.3.28)3.10、 加载宏以便获得更多的功能对EXCe1.的典型安装只包含了根本的西数公式.但是除比之外,还有大量的公式可供使用.例如,NPV的数假定每一期包含同样的日数.XNPV函数则允许你箱入现金流实现的日期.(在第19章中讨
45、论的估价模里就是用到了这一函数。)选择“工具(T)”,“加笠宏(!),“分析工具库”,需定你已经可以快用犷民语数.选择此选项并选择“确定.进行安装。这样一来,这些函数在你每次翻开EXCe1.后都能使用.如果没有“加栽宏(D选项,那么你就帝妻重装一下EXCe1.T.图3-29中显示的工作表运用了XNPV函数和EbATE函数。I-DATE语匏是一个日期函数,它的功能是每次将事先确定的日期岩加成减少若干个月.你先提供一个起始日期然后通过调用函数可以将时间提前或推后若干个月。由于提前或推后的步长是可以变动的,因此在输入区域中又有了一个新的控制.它在单元格D13:H13中确定密数需要的是始月份,并指向函
46、数的结果。再次偷入初始的现金流解到的结果是7,502.58,与原来的结果7.511.85有所不同。S329(原书第37页fig.3.29)3.11、 文本框和更新标签你可以进一步增加模型的明晰性,方法是逋it定立标名进行更新,以及在结果上提供一些文字说明。如果净现值在底度之上,你就应该洪立一个标卷来通知用户。在文件FCatUrCX1.s中的工作表TCX1.就提供了两种改良方法:在标签上显示贴现率.反应计算后的净现值.现在单元格B20有一个更新标绘,Text函数将数字转化为文本并保存原来的格式。这将显示百分比到小数点后两位:用来连接文本串:=,NPVat,TEXT(C31.,0.(K)反应用一个
47、IF函数来管理,以便显示结果在成竣之上或之下时的文字小.为了戒夕代码,IF中的文本陈述将由净现值决定。=,NPVis,IF(C20=C7.above,be1.ow)the1.imitofTEXT(C7,W)现在工作表能告诉用户所楞的贴现率并对结果进行说明(见图3-30.Exce1.将根据结果做出决定,而无帚用户再花时间去比照结果.SB3-30(4*M38Jffig.3.30)3.12、 记录版本序号、作者等正如在前面的章节中提到的那样,给模型备案是健型的一局部。在复杂的模型中,我们需要记录模型的版本序号.作者姓名和与梃型运行有关的说明文字。在模型犹立一段时间后,你可以比照并记录不同版本之间的差异.如果你要防止重大的错误,这样做是特别重要的.另外,版本序