虽然对BCB深恶痛绝,可是任务需要,只能硬着头皮上。之前看过别人的代码,以为自己对BCB操作Word文档已经掌握了,拿来编译却不能通过,才知道人家的不是直接给予CB的函数,而是又加了一层包装,他的代码更直观了。
今天上边催的紧,只好上网搜索,才知道BCB操作Word文档有两种范型。我很不喜欢GetPropertyOf()之类的代码,可是网上却充斥着这样的。费尽心机,终于找到了类似VBA的。我的代码大部分是根据网上的这位先生的,本人基本不享有版权。
我的任务主要是对Word中的表格进行读写,另外还有一部分是替换表格外的部分内容,因此代码全部基于这里给任务。
代码已经上传了,下面简单说一下怎样完成。
在BCB 6 中新建一个Application,切换到界面设计部分,在控件Tabs中打开Office2K,拖一个WordApplication,两个WordDocument到Form上,分别命名为WordApp, DestWordDoc,InterWordDoc。添加一个按钮,一个文本框,名字取缺省值。
在Form1的头文件中添加函数 bool TForm1::WordReplace(String docText, String newText, TWordApplication *WordApp, TWordDocument *InterWordDoc);
在 CPP文件中加入其实现:
在按钮的点击事件中加入如下代码
程序就这些。
但是需要设定EXE文件的输出目录,并将模板文件所在的文件夹 Doctemplates复制到输出目录中。