VB 、VBA 、VSTO----关于office二次开发

****什么是二次开发?

    一般的来说,一些大公司如IBM、MS开发了一个大型的软件系统平台,根据不同的客户的需要,一些其它的中小公司为客户根据需求在该平台上进行第二次有针对性的开发,这被统称为二次开发。
  二次开发要看软件是否提供相应的接口,有点软件公司只提供软件,但也有小公司连代码一起出售,如是后者,就更方便进行二次开发。比如售票系统,车站里面弄好了,提供几个储存过程给银行,银行就可以代理售票了,这也是一种,还有一种如我们利用delphi,C#等操作word等。
**** VBA

 直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用EXCEL的宏语言来使EXCEL自动化,使用WORD BASIC使WORD自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言VISUAL BASIC 的子集.实际上VBA是寄生于VB应用程序的版本.

  * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化.
  * VBA可以称作EXCEL的“遥控器”.
  VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案.
  此外,如果你愿意,还可以将EXCEL用做开发平台实现应用程序.
  Office取得巨大成功的一个重要原因就是VBA,使用VBA可以完成很多事情,基于Excel、Word的VBA小程序不计其数。
  VBA程序员很多是业余程序员,正因为业余,解决的却是工作中需要解决的问题;所以,VBA程序大多都是只是在部门内部或个人使用的小工具。
****VB 与VBA
 VBA 是基于Visual Basic 发展而来的,它们具有相似的语言结构。Visual Basic 是Microsoft 的主要图形界面开发工具,VBA 5.0 (亦即VBA 97)则是Visual Basic5.0 的子集。Visual Basic 是由Basic 发展而来的第四代语言。Visual Basic 作为一套独立的Windows 系统开发工具,可用于开发Windows 环境下的各类应用程序,是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言。它具有高效率、简单易学及功能强大的特点。VB 的程序语言简单、便捷,利用其事件驱动的编程机制,新颖易用的可视化设计工具,并使用Windows 应用程序接口(API)函数,采用动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)以及开放式数据库访问(ODBC)等技术,可以高效、快速地编制出 Windows 环境下功能强大、图形界面丰富的应用软件系统。 
  VBA 不但继承了VB 的开发机制,而且VBA 还具有与VB 相似的语言结构,它们的集成开发环境IDE(Intergrated Development Environment)也几乎相同。但是,经过优化,VBA 专门用于Office 的各应用程序。VB 可运行直接来自Windows 95 或NT 桌面上的应用程序,而VBA 的项目(Project)仅由使用VBA 的Excel、Word、PowerPoint 等称为宿主(Host)的Office 应用程序(Application)来调用。

****VSTO  
Visual Studio Tools for Office 也是微软对VBA的替代。
Visual Studio 2005 Tools for the Microsoft Office System 使 IT 专业人员、ISV 和 系统集成商在 Microsoft Office System 平台上建立强大的智能客户端解决方案。
  Microsoft Visual Studio 2005 Tools for the Microsoft Office System 是一个专业的开发环境,独立的专业开发人员可以使用它创建基于 Microsoft Office System 的业务应用。
  Microsoft Excel2003 和 Microsoft Word 2003 现在已经完全的集成到 Visual Studio 2005 集成开发环境(IDE)当中,使得开发人员能够更容易的使用托管控件来扩展 Office 解决方案,并为开发人员带来了更加直观的设计、开发和调试体验。
  定制解决方案更加方便 裁减 Word,Excel,Microsoft Outlook或 Microsoft InfoPath的功能来满足各种应用中的不同需求。
  改进代码编辑能力,更加节省时间 使用 Visual Studio 2005 代码编辑器能够自动发现代码错误、给出修改建议并能够改正通常的编程错误。
  利用 Microsoft Office 中的文件共享、协作、权限管理、数字分析、图表、电子邮件、日历等等强大功能帮助您进行快速的开发。
  降低培训成本 通过构建基于熟悉的 Microsoft Office System 用户界面的解决方案能够最小化耗时的用户培训成本。
  创建上下文相关的功能 使用简单的代码就能够访问到 Excel 和 Word 的动作面板和智能标签,轻松的创建自订制的、上下文相关的功能。
Microsoft Visual Studio 2005 Tools for the Microsoft Office System 包括:
  Microsoft Visual Basic 和 Microsoft Visual C编程语言
  创建 Windows 和 Web 解决方案的开发工具
  集成可视化设计数据库、查询和存储过程的工具
  高级调试工具,包括跨机器调试
  Microsoft Office Access 2003 Developer Extensions 和运行时扩展

****VBA于VSTO

 

    VSTO为想构建Office应用程序的开发者提供专业的开发环境。有很多理由让你想用VSTO创建解决方案,也有一些理由让VBA成为你的项目的更好选择。

你可能选择VBA创建Office解决方案,如果你想做的是:

   为比Office 2003专业版更老的Office版本创建应用程序级别的定制程序。

   为VSTO或VSTO 2005 SE不支持的Office应用程序创建应用程序级别的定制程序,例如Microsoft Access。

   为Office 2003标准版创建文档级别的定制程序。

   通过全局模板为Word和Excel创建应用程序级别的定制程序。

   通过创建名字相同的宏,覆盖Word、Excel和Outlook的本地命令。

   组织的规定禁止把.NET Framework部署到最终用户的电脑上。

你可能选择使用VSTO或者VSTO 2005 SE创建Office解决方案,如果你想做的是:

   易于向你的解决方案添加智能标记。

   提供仅对特定文档可用的智能标记。

   在文档和任务窗格上使用丰富的控件集。

   在文档里储存数据以便可以离线使用,并且,文档下次在线时,数据要易于更新。

   创建具有稳定加载和卸载机制的插件。

   仅用几行代码就可以定制任务窗格(task pane)。

   易于定制Office 2007的功能区(Ribbon)。

   定制Outlook 2007窗体区域(Outlook form region)。

   使用更强大的调试工具。

   使用Visual Studio集成开发环境里的众多工具,例如Data Sources窗口和丰富的智能感知功能。

   使用专业开发语言为你的解决方案编写托管代码,例如Visual Basic或者Visual C#。

   使用更简单的方法维护代码和更新部署后的解决方案,使得代码的修改发生在一处(在单个程序集里)而不是某份文档的多个副本或者全局模板里。

   通过避免由用户决定代码是否可以安全运行来减少宏病毒的可能性。

   在你的Office解决方案里为文档的对象增加数据绑定的能力。

   使用VSTO提供的扩展Office对象所公开的事件。

你可能感兴趣的:(VB,&,VBA,Office办公,vba,office,vb,microsoft,basic,excel)