




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Excel条件格式化工具的设计与实现 摘要Excel是一个在各个领域中被广泛应用的电子表格软件。通过它,我们可以很好的组织管理数据,对数据进行统计分析等。在实际应用中,我们发现经常需要根据某种特定的条件,特殊显示部分数据。虽然这种功能可以通过Excel宏来实现,但每次编写类似的代码使人感觉跟不方便。Excel同其它Office组件一样,提供了通过插件进行功能扩展的可能。通过编写和安装插件,我们可以几乎任意地扩展Excel的功能,为我们的工作提供极大的便利。本文详细介绍了一个Excel条件格式化软件的设计和实现。该软件使用COM组件技术,根据Office插件的接口要求,设计了一个Excel的插件。该插件在Excel应用程序的窗口中增加一个工具栏,并在其上创建了一个按键,用于打开格式化设置窗口。软件可以对用户输入的、用字符串表达的判断条件进行计算,并根据计算结果,将满足条件的单元数据设置为用户选择的特殊格式(字体、颜色、字号、修饰等)关键词:Excel插件;COM组件;接口Excel条件格式化工具的设计与实现1引言我们生活的这个世界是丰富多彩的,几乎所有的知识都来自于视觉。也许无法记住一连串的数字,以及它们之间的关系和趋势。但是可以很轻松地记住一幅图画或者一个曲线。Excel就具有许多高级的制图功能,同时使用起来也非常方便。它不仅可以用来制作电子表格、完成许多复杂的数据运算,还可以进行数据的分析和预测。Excel文档是实际工作学习中最为常用的文档格式之一,为了增强Word、Excel等软件的自动化能力,人们开发了各种提高办公效率的软件,它们大多数实用、专业性强。为了避免用户做大量重复性的工作,提高Office办公效率,达到提高其实用功能的目的,可根据具体工作内容要求,编写出最具本地化、个性化、最合适的软件。2 COM组件的实现技术2.1 COM组件技术COM 是微软公司为了计算机工业的软件生产更加符合人类的行为方式开发的一种新的软件开发技术。在COM构架下,人们可以开发出各种各样的功能专一的组件,然后将它们按照需要组合起来,构成复杂的应用系统。由此带来的好处是多方面的:可以将系统中的组件用新的替换掉,以便随时进行系统的升级和定制;可以在多个应用系统中重复利用同一个组件;可以方便的将应用系统扩展到网络环境下;COM与语言,平台无关的特性使所有的程序员均可充分发挥自己的才智与专长编写组件模块。COM是开发软件组件的一种方法。组件实际上是一些小的二进制可执行程序,它们可以给应用程序,操作系统以及其他组件提供服务。开发自定义的COM组件就如同开发动态的,面向对象的API。多个COM对象可以连接起来形成应用程序或组件系统。并且组件可以在运行时刻,在不被重新链接或编译应用程序的情况下被卸下或替换掉。Microsoft的许多技术,如ActiveX, DirectX以及OLE等都是基于COM而建立起来的。并且Microsoft的开发人员也大量使用COM组件来定制他们的应用程序及操作系统。COM所含的概念并不止是在Microsoft Windows操作系统下才有效。COM并不是一个大的API,它实际上象结构化编程及面向对象编程方法那样,也是一种编程方法。在任何一种操作系统中,开发人员均可以遵循“COM方法”。一个应用程序通常使由单个的二进制文件组成的。当编译器生成应用程序之后,在对下一个版本重新编译并发行新生成的版本之前,应用程序一般不会发生任何变化。操作系统,硬件及客户需求的改变都必须等到整个应用程序被重新生成。目前这种状况已经发生变化。开发人员开始将单个的应用程序分隔成单独多个独立的部分,也既组件。这种做法的好处是可以随着技术的不断发展而用新的组件取代以有的组件。此时的应用程序可以随新组件不断取代旧的组件而渐趋完善。而且利用已有的组件,用户还可以快速的建立全新的应用。传统的做法是将应用程序分割成文件,模块或类,然后将它们编译并链接成一个单模应用程序。它与组件建立应用程序的过程(称为组件构架)有很大的不同。一个组件同一个微型应用程序类似,即都是已经编译链接好并可以使用的二进制代码,应用程序就是由多个这样的组件打包而得到的。单模应用程序只有一个二进制代码模块。自定义组件可以在运行时刻同其他的组件连接起来以构成某个应用程序。在需要对应用程序进行修改或改进时,只需要将构成此应用程序的组件中的某个用新的版本替换掉即可。 COM即组件对象模型,是关于如何建立组件以及如何通过组件建立应用程序的一个规范,说明了如何可动态交替更新组件。使用组件的优点:组件架构的一个优点就是应用可以随时间的流逝而发展进化。除此之外,使用组件还有一些可以使对以有应用的升级更加方便和灵活的优点,如应用的定制,组件库以及分布式组件等。使用组件的种种优点直接来源于可以将它们动态的插入或卸出应用。为了实现这种功能,所有的组件必须满足两个条件:第一,组件必须动态链接;第二,它们必须隐藏(或封装)其内部实现细节。动态链接对于组件而言是一个至关重要的要求,而消息隐藏则是动态链接的一个必要条件。2.2 接口由于组件向外部隐藏了其内部的细节,因此客户要使用组件时就必须通过一定的机制,也就是说要通过一定的方法来实现客户与组件之间的通信,这就需要接口。所谓接口就是组件对外暴露的、向外部客户提供服务的“连接点”。外部的客户见不到组件内部的细节,它所能看到的只是接口,客户也是通过接口来获取组件提供的服务。这有点像OSI网络协议分层模型,每一层就像一个组件,它内部的实现细节对于其他层是不可见的;而每一层通过“服务接入点”向其上层提供服务,这就像这里所说的接口。一般来说,接口总是固定的,也是公开的。组件的开发人员要实现这些接口,而客户则通过接口获得服务。正是接口的这种固定和公开,才使得组件和客户能够在不了解对方的情况下达成一致。接口提供了两个不同对象间的一种连接。实际上计算机程序是通过一组函数而连接起来的。这组函数实际上就定义了程序中不同部分的接口。DLL的接口就是它所输出的那些函数。COM中的接口也涉及到一组由组件实现并提供给客户使用的函数。对于COM来说,接口是一个包含一个函数指针数组的内存结构。第一个数组包含的是一个由组件所实现的函数的地址。对于COM而言,接口就是此内存结构,其它东西均是一个COM并不关心的实现细节。接口的作用:在COM中接口就是一切。对于客户来说,一个组件就是一个接口集。客户只能通过接口才能同COM组件打交道。从整体上讲,客户对于一个组件可以说是知之甚少的。在某些情况下,客户甚至不必知道一个组件所提供的所有接口。可复用应用程序架构:说组件仅仅只是接口的实现细节当然有点言过其实。不管怎么说,一个未被实现的接口实际上什么也不能完成。但是组件可从应用程序中删除并可用另外一个组合来取代之。只要新的组件支持同组件相同的接口,那么整个应用程序将仍然能够工作。单个的组件并不能对整个应用程序产生决定的作用。相反,用以连接组件的接口将对整个应用程序产生决定性的作用。只要接口保持不变,那么组件可以任意地更换。接口同木板房中的大梁非常类似。这些大梁决定了整个房屋的结构。同样可以将应用程序所用的组件替换掉,这样应用程序的行为将会发生变化,但从结构上讲,整个应用程序并没有发生任何变化。使
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论