在日常处理excel数据时,会遇到需要在某些列已有的数据后继续写入数据的情况,不同于批量写入的write range,由于这些列的位置不一定相邻,所以说我们得用一些流程来完成这个工作。
本文主要是介绍一下解决方法,因此用了一个比较简单的例子来说明,反正换汤不换药,思路都是一样的。
首先呢,我做了两张表,我要把表格1中的列2和列8写入表格2中,(注意:在工作中可能遇到一张表在另一张表中查询某条件相同,将相同条件对应的记录的某个列的值写入你需要的表格中的情况,我这边为了演示方便,就不设定查询情况了,直接规定了某列),具体的表格一和表格二的情况如图:
那么现在,我们要将列名相同的列2和列8数据添加入表格2的数据之后。
首先先读取两个表格,分别为dt1何dt2。
其次,我们需要新建一个DataRow类型的变量,因此这边我们创建了一个名为newrow的变量。在assign的左边写入变量newrow,在右边写入dt2.NewRow。其中,dt2是你需要加入行的表,然后我们就可以在newrow上赋值,我们可以给予newrow下标来控制添加值的位置,如图:
我这边之所以用了循环,主要是因为我需要这个例子中没有任何条件,单纯把表格1中对应内容写入表格二的后面,各位朋友可以根据自己的需求来写。像这样赋值后,我们需要用控件Add Data Row,将新增的行加入你需要添加行的表格,参数如图:
在添加行都结束后,我们需要将已经操作过的dt2写入你需要的表格中,如图:
最后让我们看一下运行结果:
表格1对应的数据已经加入表格2了。