用VBA填充Word模板中的表格?

时间:2012-05-22 10:05:58

标签: templates ms-word word-vba

我正在填写一个Word模板,其中包含从用户输入中收集的数据。特别地,选择(可变)数量的文档,并且关于每个文档的信息填充表格的一行。

我已经为模板中的几个项目添加了书签并成功填写了我的宏标题中的信息,但我不太确定。我为第一个单元格添加了书签并尝试使用tab(使用Chr(9)),并尝试传递数组。 (在模板中,表只有第一行。通常在最后一列之后标记会创建一个额外的行。)

我可以用

来修复细胞内容
   Word.Application.ActiveDocument.Tables(1).Cell(3, 1).Range.Text

但是不能写入除第一个之外的任何单元格,我放置了一个书签。

任何人都可以提供填充表格的可能解决方案吗?

2 个答案:

答案 0 :(得分:6)

要填充表格,请使用此代码

ActiveDocument.Tables(1).Cell(1, 1).Range.Text = "Blah Blah"

这将写入第一个表中的第一个单元格。使用循环填充其余单元格。

我还建议看这个链接。

主题:自动化Word表格以进行数据插入和提取

链接http://msdn.microsoft.com/en-us/library/aa537149%28v=office.11%29.aspx#Y1254

摘录

  

摘要:了解如何在Word中自动创建和格式化表。获取有关优化性能,使用数据填充表格,格式化表格结构,链接表格数据以及从表格中提取数据的信息。 (25页打印)

答案 1 :(得分:0)

我实际上遇到了类似的问题,使用Access来自动填写Word表格模板。我发现如果我在运行VBA脚本之前在Word中打开模板,那么Word文档将成功填写表信息。我的代码看起来类似于你的代码,只要按行添加即可。因为要转移到表单的字段数是动态的,所以看起来每个部分的书签都不起作用。如果您有任何更新,我很高兴听到解决此问题的不同方法。