将文本添加到vb.net中的MS Word表格太慢

时间:2014-08-09 17:06:21

标签: vb.net ms-word automation

this question以及互联网上的许多其他示例,我们可以弄清楚如何自动添加到MS Word表的文本:

ProductTable.Cell(2, 1).Range.Text = "whatever text here"

但问题是这个过程太慢了,你甚至可以看到逐行添加的行。

对于小型应用程序来说这不是问题,但在我的情况下,我需要添加大约6000行文本。

有没有更快的方法呢?

1 个答案:

答案 0 :(得分:0)

如果您首先以CSV方式添加完整的表格内容,然后使用Range.ConvertToTable方法将其转换为表格,您可以尝试,无论它是否更快。

E.g。在Word VBA中:

With ActiveDocument
 Set myRange = .Paragraphs(.Paragraphs.Count).Range
 myRange.Text = _
 "data11,data12,data13" & vbCrLf & _
 "data21,data22,data23" & vbCrLf & _
 "data31,data32,data33" & vbCrLf
 myRange.ConvertToTable Separator:=wdSeparateByCommas 'not necessarily commas, depends on the Locale properties
End With

Greetimgs

阿克塞尔