为什么使用VSTO代替VBA?

VSTO为想要创建Office应用程序的开发者提供了一个专业的开发环境。有许多理由使得您可能想使用VSTO来创建解决方案,也有一些理由使得使用VBA创建解决方案可能会更好。
如果想要进行下列操作,可能会选择VBA创建Office解决方案。

  • 为Office 2003专业版之前的版本创建应用程序级的定制。
  • 为在VSTO或VSTO 2005 SE中不支持的Office应用程序创建应用程序级的定制,例如Microsoft Access。
  • 为Office 2003(标准版)创建文档级的定制。
  • 通过使用全局模板为Word和Excel创建应用程序级的定制。
  • 通过创建与想要重载的命令有相同名称的宏,重载Word、Excel和Outlook中的原始命令。
  • 对终端计算机粘附禁止配置.NET框架的有组织的需求。

如果想要进行下列操作,可能会选择使用VSTO或VSTO 2005 SE来创建Office解决方案。

  • 容易添加智能标记到解决方案中。
  • 提供仅对特定文档可用的智能标记。
  • 在文档和任务窗格中使用更丰富的控件。
  • 在离线的文档里存储数据,并在下次文档在线时容易更新。
  • 创建有一个稳定装载和卸载机制的加载项。
  • 仅使用几行代码定制任务窗格。
  • 容易定制Office 2007中的功能区。
  • 定制Outlook 2007窗体区域。
  • 访问.NET框架类库。
  • 使用更健壮的调试工具。
  • 获取对Visual Studio的整合开发环境(IDE)里的一些工具的访问,例如数据源窗口和富智能感应功能。
  • 使用专业的开发语言,例如Visual Basic 2005或Visual C#,编写可管理代码的解决方案。
  • 使用更容易的方法来维护代码和更新配置解决方案,使得代码修改在一个位置(在单个的集里面)而不是在文档的多个副本里或在全局模板中。
  • 减少宏病毒的可能,避免最终用户决定是否代码是安全的。
  • 在Office解决方案里的文档中,获取对象的数据绑定功能。
  • 获取对VSTO提供的扩展Office对象公开的事件的访问。

注:本文整理自《VSTO for Mere Mortals》─—A VBA Developer’s Guide to Microsoft Office Development Using Visual Studio 2005 Tools for Office,有删节。


提示:您可以在评论中使用HTML标签,且任何与HTML标签相同的符号都会被理解为HTML标签并以相应的格式显示.如果您的评论中有代码,可以使用相应的标签,例如,如果有VB或VBA代码,则可以使用[vb]标签,即[vb]放置的代码[/vb],这样会很清晰地显示代码.

1条评论

  1. caocao 说到:

    学习中,跟你交换个链接。http://www.caocao.org

    ——————
    (excelperfect回复)
    请您先加上我的链接.

留下回复