C# word 操作进阶-05-复制表格[转载]

原文:https://www.cnblogs.com/oBehavior/p/16529381.html
C# word 操作进阶-05-复制表格

在插入图片或者插入表格、粘贴表格的时候,需要定位到一个位置再操作,例如效果图

在这里插入图片描述

word模板,如图

在这里插入图片描述
要实现效果图,需要复制表格2次,并且插入文本被测科室:实验室

WordHelper.cs代码如下

//这里要复制的表是word模板中第二张表
word.Table tb2 = wdoc.Tables[2];
tb2.Range.Copy();//复制一下
tb2.Select();//选中表对象,此时光标已经在这张表格上了

//复制后的第一张表:实验室2
object what = word.WdGoToItem.wdGoToLine;
object which = word.WdGoToDirection.wdGoToNext;
object count =3;//光标下移3格
wapp.Selection.GoTo(ref what, ref which, ref count, ref missing);
wapp.Selection.Range.Text = "被测科室:实验室2\n";//插入文本
wapp.Selection.GoTo(ref what, ref which, 1, ref missing);//光标下移1格,不和被测科室这个文本在一块,另起一行
wapp.Selection.Paste();//粘贴表

//复制后的第二张表:实验室3
object what = word.WdGoToItem.wdGoToLine;
object which = word.WdGoToDirection.wdGoToNext;
wapp.Selection.Range.Text = "被测科室:实验室2\n";//插入文本
wapp.Selection.GoTo(ref what, ref which, 1, ref missing);//光标下移1格,不和被测科室这个文本在一块,另起一行
wapp.Selection.Paste();//粘贴表

注意:主要是GoTo方法来实现换行,可以根据实际情况再多下移或者上移几行。

这里并没有赋值的代码,赋值时调用WordHelper中的ReplaceTableRang,其实参数Table,需要根据下标传入,例如复制的是wdoc.Tables[2],当粘贴后,wdoc.Tables[3]就是刚粘贴的表啦,再粘贴一次,就是wdoc.Tables[4],依次类推,注意必须在wapp.Selection.Paste();后面调用ReplaceTableRang,否则肯定是找不到表啦,毕竟还没粘贴呢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值