在编程开发过程中,偶尔有通过开发相应程序编辑并生成word的功能,那么该如何做呢?对于新手来说会是一件很头疼的事情,在这我教大家一个方便实用简单的办法。
工具/原料
office 2003(主要是word,excel也可以适用)
1、开始录制插入表格宏
1、打开word工具,选择工具->宏->Visual Basic 编辑器。
2、在随后出现的窗口中,“将宏保存在:”下拉框中,选择文档1(文档)
3、从常用工具栏中,点击插入表格按钮,并选择一个3行3列的表格
4、在宏录制工具栏上,点击停止录制按钮
5、此时,文档中出现了一个3行3列的表格
2、查看宏代码
1、选择工具->宏->Visual Basic 编辑器
2、在出现的Visual Basic窗口中,从左边展开Project(文档1)中的模块,并双击NewMacros。
3、接下来右边窗口中会弹出相应代码
3、VBA代码分析
1、分析vba代码
4、VBA代码转换为JavaScript代码应该注意的问题
1、VBA中的常量应该使用数字代替。比如上面以下VBA语句中的wdWord9TableBehavior以及wdAutoFitFixed。
2、要得到VBA常量的数字值,可以在Visual Basic编辑器中,随便输入一个Sub过程,加入MessageBox 常量即可。比如,要显示
3、将光标定位到Msgbox语句所在行,点击工具栏上的运行按钮
4、即可得到结果
5、2)在VBA代码中,可以直接访问Application对象,ActiveDocument对象,以及Selection对象。但是在使用JavaScript对NTKO OFFICE文档控件中的Word对象编程时,首先是通过控件对象.ActiveDocument得到word的Document对象,然后通过Document对象的Application属性访问Application对象。然后再通过Application对象得到Selection对象。比如:var mydoc = ntkoobj.ActiveDocument; //得到Document对象 var app = mydoc.Application; //得到Application对象 var sel = app.Selection; //得到Selection对象
6、3)VBA函数或者过程调用支持命名参数。但是JavaScript调用不支持命名参数。因此,应该在Word编程帮助中找到相应方法的描述,按照从左到右的顺序写入参数。常量采用数字代替。中间不能有遗漏的参数。但是最后面的可选参数是可以省略的。
7、注意VBA中的Bool类型的常量True和False,应该替换为Js中的true和false.
8、注意其它Js和VBA的语法差别。比如,if语句等。以及每行js语句之后需要分号。
5、将VBA代码转换为JavaScript代码
1、按照上述原则,以下VBA语句:
2、可以遵循以下步骤被转换为如下JavaScript代码: 首先查阅Tables集合的Add方法描述,在Word编程参考中对Tables对象的Add方法的描述如下:
3、而通过第6节,第1)步所描述的方法,可以得到wdWord9TableBehavior=1,wdAutoFitFixed=0 有了这些信息,就可以得到如下Js代码:
4、如果你觉得这个经验有用的话,请在经验下方发表你的意见或者投上你宝贵的一票,非常感谢!