Excel将一个工作簿中的多张工作表中的数据合并到一张工作表中

作者(出处):百宝箱工作室发布时间:2017年1月12日 16:54:39查阅量:300

程序代码如下:

Sub 合并()
 '把各班成绩表中的记录合并到"成绩表"工作表中
    Dim sht As Worksheet
    Set sht = Worksheets("成绩表")
    sht.Rows("2:65536").Clear      '删除成绩表中的原有记录
    Dim wt As Worksheet, xrow As Integer, rng As Range
    For Each wt In Worksheets                   '循环处理工作簿中的每张工作表
        If wt.Name <> "成绩表" Then
            Set rng = sht.Range("A1048576").End(xlUp).Offset(1, 0)
            xrow = wt.Range("A2").CurrentRegion.Rows.Count 
            wt.Range("A2").Resize(xrow, 7).Copy rng
        End If
    Next
End Sub

解析:

1、Range("A1048576")表示工作表中的最后一个单元格。

2、End(xlUp)表示将工作表中的最后一个单元格移动到顶端的单元格。

3、Offset(1, 0)表示向下移动一行,正数表示向下移动,负数表示向上移动,列不移动。

4、wt.Range("A2").CurrentRegion.Rows.Count 表示从第二行第一列所在的区域的行的数量。

5、wt.Range("A2").Resize(xrow, 7)表示将工作表wt将第二行第一列为起始的数据行有xrow行,列有7列。

6、wt.Range("A2").Resize(xrow, 7).Copy rng将工作表wt将第二行第一列为起始的数据行有xrow行,列有7列复制到单元格rng中。

附图:

百宝箱网络工作室  版权所有  
站长QQ:1617818397  站长E-mail:1617818397@qq.com
Powered by www.baibaox.com  Copyright © 2011-2018
点击这里给我发消息  
若本文对您有帮助,请扫码打赏,您的赞助就是最好的动力