日期:2014-05-19  浏览次数:21005 次

[求助]用C#如何在WORD中插入多个表格?大家帮帮我
用C#如何在WORD中插入多个表格?为什么用循环表格都是一一嵌套的??   我想插入多个表格怎么实现?

------解决方案--------------------
一段VBA代码,插入两个表格
//表一
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=2, NumColumns:= _
5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed
With Selection.Tables(1)
If .Style <> "网格型 " Then
.Style = "网格型 "
End If
.ApplyStyleHeadingRows = True
.ApplyStyleLastRow = True
.ApplyStyleFirstColumn = True
.ApplyStyleLastColumn = True
End With

//重点在这里,把焦点向下移动,不然焦点在第一个单元格里的
Selection.TypeParagraph
Selection.MoveUp Unit:=wdLine, Count:=3
Selection.MoveDown Unit:=wdLine, Count:=10
Selection.MoveUp Unit:=wdLine, Count:=1

//表二
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=2, NumColumns:= _
5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed
With Selection.Tables(1)
If .Style <> "网格型 " Then
.Style = "网格型 "
End If
.ApplyStyleHeadingRows = True
.ApplyStyleLastRow = True
.ApplyStyleFirstColumn = True
.ApplyStyleLastColumn = True
End With

在C#中操作的时候,可能有点不一样,原理是通的,大概的对象模型也是一样的,自己看看
------解决方案--------------------
代码手头正好不在。

思路是这样的:
表格除标题共2行。
第一行中放标签填充数据,作为模版用来循环复制。第二行空行,头部放一个定位标签。

循环开始:
填充第一行数据。
选择第一样整行,复制。
光标移动到第二行,粘贴。
循环结束。

最后选择第一行,删除。

以上操作都有相对应的vba,可以转换成c#