日期:2014-05-18  浏览次数:20454 次

求助!用C#操作WORD生成多个表格时,如何使得上下相邻表格之间没有空行?
根据用户的给的样本格式模板WORD,需要用代码从数据库中提取数据,然后生成WORD文档,打印输出。
为了便于控制定位和格式,把用户的WORD格式全部以表格方式来进行定位,包括标题啊,额外信息著名注明啊,备注啊的等等,即每行以一个表格的形式来实现,整体显示成大表格。
但是,上下2个相邻表格之间总是有一个空行,不知道该如何在已经生成的表格下一行排头接着生成第二个表格。

每个表格生成使用相同的代码
Word.Table CurTable = WordDoc.Tables.Add(WordApp.Selection.Range, Rows, Columns, ref Nothing, ref Nothing);

在生成上面一行的表格后,加了如下代码用来换行
object WdStory = Word.WdUnits.wdStory;
WordApp.Selection.EndKey(ref WdStory, ref Nothing);
object count = 14;
object WdLine = Word.WdUnits.wdLine;//换一行;
WordApp.Selection.MoveDown(ref WdLine, ref count, ref Nothing);//移动焦点
WordApp.Selection.TypeParagraph();//



这样生成后的格式,发现每行表格之间都有一行空行

表格1单元格1 表格1单元格2 表格1单元格3 表格1单元格4 表格1单元格5 
空白行
表格2单元格1 表格2单元格2 表格2单元格3 表格2单元格4 表格2单元格5 
空白行
表格3单元格1 表格3单元格2 表格3单元格3 表格3单元格4 表格3单元格5 


现在不知道该如何取消这些空行,使得格式变为

表格1单元格1 表格1单元格2 表格1单元格3 表格1单元格4 表格1单元格5 
表格2单元格1 表格2单元格2 表格2单元格3 表格2单元格4 表格2单元格5 
表格3单元格1 表格3单元格2 表格3单元格3 表格3单元格4 表格3单元格5 

试了很多种方法,都没有办法解决,若是整页只用一个表,而把每行每个单元格来处理,格式上倒是没问题,但是格式定位就不是很自由了。
并且如果这样的情况也会有问题

  标题
附加信息1 附加信息1
表格1单元格1 表格1单元格2 表格1单元格3 表格1单元格4 表格1单元格5 

会变成

  标题
  空白行
附加信息1 附加信息1
  空白行
表格1单元格1 表格1单元格2 表格1单元格3 表格1单元格4 表格1单元格5 


这样肯定不行的。
各位有对WORD比较熟悉的,希望不吝赐教。

------解决方案--------------------
看着好复杂啊
------解决方案--------------------
将表格都导出后再通过获取表格范围,判断是否存在空白行来删除可以吗?
------解决方案--------------------
这个比较复杂啊,先帮你顶了