如果是打开Excel文件就自动运行宏,那么,可以在ThisWorkBook里面,在WorkBook_Open事件里面加入代码,这样启动Excel文件即可自动运行宏。或者在模块里面使用Auto_Open事件,也可以自动运行宏。
发展壮大离不开广大客户长期以来的信赖与支持,我们将始终秉承“诚信为本、服务至上”的服务理念,坚持“二合一”的优良服务模式,真诚服务每家企业,认真做好每个细节,不断完善自我,成就企业,实现共赢。行业涉及成都酒楼设计等,在重庆网站建设公司、成都营销网站建设、WAP手机网站、VI设计、软件开发等项目上具有丰富的设计经验。
如果是在Excel使用过程中使用宏,就必须根据你的需要,选择合适的事件来触发宏代码。
比如,如果要A1单元格的值改变,就自动运行某个宏,那么就在Sheet_Change事件中,加入代码
If Target.Address = "$A$1" Then Call xx宏
如果是选取单元格变化触发某个宏,则用SHeet_SelectionChange事件。
所以,要自动运行某个宏,就必须明白你首先需要在什么时候触发宏,然后根据需要来选择相应的事件即可!!
第一步,新建项目。
1
打开vb.net,也就是打开Microsoft visual studio 2010,第一次使用的时候设置为basic语言就行。新建项目--打开excel。
2
新建成功。
END
第二步,添加引用。
1
“项目”--“添加引用”。
2
添加Microsoft Excel 14.0 Object Library。
END
第三步,添加打开文件对话框工具。
1
工具箱--对话框--openfiledialog。
2
添加成功。
END
第四步,添加命令按钮控件。
1
工具箱--公共控件--button。
在控件上右击鼠标,进入属性设置。
2
text属性设置为“打开excel”。
3
name属性也设置为“打开excel”。
END
第五步,编写程序。
1
鼠标双击命令按钮,进入编程界面,编写程序。
END
第六步,运行程序。
1
鼠标单击启动调式图标,程序开始运行。
2
单击打开excel命令按钮,调用打开文件对话框,选择自己要打开的excel文件。
END
第七步,保存程序。
第一次程序运行完,关闭程序,出现关闭项目提示,选择保存。
2
选好自己要保存的位置。
1 使用Shell函数直接调用
语法:Shell (pathname[,windowstyle]).Pathname是指要执行的程序的名字和任何必须的参数或命令行开关,可以包括目录和驱动器名;Windowstyle是执行程序的窗口风格的数字。
使用Shell调用Word比较简单,编程量小,但必须明确指定Word所在路径,这不利于移植,而且,不能对Word进行控制,不利于程序和Word之间的数据交换。
2 使用OLE自动化控制Microsoft Word
2.1 使用方法
(1)Word为OLE自动化提供一种称为“Basic”的对象,要在VB中控制Word ,首先要定义一个引用Word中“Basic”对象的对象变量:Dim Wordobj as Object
(2)将Word 中的“Basic”对象赋给该对象:Set Wordobj=CreateObject("Word.Basic")
(3)可以使用大多数WordBasic语句和函数控制Word或Word文档,使用方法和在Word宏中使用WordBasic指令的方法基本相同。
(4)关闭Word:Set Wordobj =Nothing。
注意:“Basic”对象不支持关闭它自己的一个方法。即若在OLE自动化中关闭了Word,则对象被置为Nothing,便不能再对对象进行操作,程序出错。
2.2 VB指令与WordBasic指令的差异
(1)有一些语句和函数不能使用,包括:控制结构,如While…Wend和If…Then…Else;声明语句,如Dim;定制对话框相关的语句:FileExit语句;要求数组变量作为参数的语句或函数。
(2)也有一些指令使用方法不同。①返回字符串以一个美元符($)结束的WordBasic函数的关键字必须括在方括号中。例如,在WordBasic宏中的GetBookmark$()语句:mark$=GetBookmark$("Address"),若用VB调用,必须这样写mark$=Wordobj.[Ge-tBookmark$]("Address")。②选择一个命令按钮用“True”,不选择用“False”
2.3 对OLE自动化的说明
Word可以为OLE自动化给另一个应用提供对象,但是它不能使用OLE自动化访问其它应用中的对象。例如:VB和Excel可以使用OLE自动化访问Word,但是Word不能使用OLE自动化访问它们。
3 在包容器中嵌入Word对象
在VB中,要访问在包容器中嵌入的Word对象,首先要在项目中插入对象。做法如下:在窗体中插入OLE控件,对象类型选择“MicrosoftWord图片”或“Microsoft Word文档”,再按“确定”。
然后用Object属性访问文档或图片,并使用WordBasic语句和函数作用于它。嵌入的对象必须在可被访问之前被激活,可以使用Action属性激活OLE控件。例如,使用下面指令访问一个嵌入在称为OLE1的OLE控件中的文档:
Dim Wordobj as Object
OLE1.Action =7
Set Wordobj =OLE1.Object.Application. WordBasic
其他方面,使用方法同OLE自动化。使用在包容器中嵌入的Word对象,Word显示的窗口大小、位置与OLE控件定义的大小、位置相同,而且工具栏显示位置与Word脱离。这一点与OLE自动化相比,是个不足。
总之,要想在Microsoft Visual Basic中控制Microsoft Word,最好使用OLE自动化,通过使用WordBasic指令对Word进行全面控制,而且,用户使用起来与使用Microsoft Word一样,非常方便。
先创建一个模板excel文件,然后作为资源放在程序中,先释放这个文件,然后操作这个文件。