Office中VB和VBA有什么联系

时间:2022-06-01 14:08:55

当将office卸载或者office出现问题后,vb在开启加载时,出现问题,提示windows正在配置microsoft office professioal edition 2003,这是为什么呢?

原因是装了office之后,默认装了vb的编程相关组件,可以说是宏,就是VBA,里面包含了VB的部分功能,可以更好的对office进行操作。

VBA与VB语言上没有太大差异,不同的只有在对象引用上,因为VBA通常是内嵌式的,可以所会VB的用VBA完全不成问题,反之也差不多

那么三者之间有什么联系呢?

VBA全称Visual Basic For Application,是VB的一个子集,但是功能强大,VB90%以上的功能它都有。也就是说它是集成在应用程序中的VB语言,可以被VB调用,从而通过调用EXCEL等应用程序(以OFFICE家族成员为主)来扩展VB的功能和简化VB编程。VBA针对不同程序,有不同对象和其独有的函数、方法等,但其核心语言与VB大同小异,不同的只有在对象引用上,因为VBA通常是内嵌式的(VBA有FOR EXCEL、WORD、ACCESS,在OFFICE中内嵌,不能编译成EXE)。它可以实现VB实现不了的功能,使用VBA最简单的方法是在OFFICE中录制宏,然后改造成VB代码。

它可用来开发自定义Microsoft Office 解决方案。将VBA 和一个或多个Office 应用程序对象模块配合使用,您可以轻松地修改 Office 应用程序的功能,或者使两个或多个应用程序协同工作,从而完成单个应用程序无法完成的任务。此外, VBA 只能控制操作系统的一小部分,即直接向 VBA 公开的那些函数和对象。当然VBA不仅限于Office,很多其它大型应用程序都带用VBA组件。

Office2000新增的功能有一个COM加载项,那么COM是指的什么,怎么用?

COM 组件对象模型,可以用VB编写,然后被应用程序调用的一种设计模式,可以创建在所有OFFICE应用程序中都可以使用的嵌入程序。还可以为VB6 Editor创建加载项。形象地说,通过COM加载项,可以在不增加用户使用复杂程度的前提下扩展基于OFFICE应用程序的功能。

COM加载项是一种经过注册的动态链接库(DLL或ActiveX.exe两种格式),要在VB6中为OFFICE构造COM加载项,需作一些准备,如微软提供的COM Add-ins.vbp工程模板,几句话说不清楚,你可以在《Office2000 Visual Basic 程序员指南》中找到详细的资料及该模板和相关代码。

原文链接:https://blog.csdn.net/lvshihua/article/details/7905233