WEB开发网
开发学院软件教学办公软件Excel 把同一个工作薄中的其它工作表记录全部追加到第一... 阅读

把同一个工作薄中的其它工作表记录全部追加到第一个工作表的后面的VBA代码

 2012-07-02 19:43:22 来源:开发学院   
核心提示:以下代码的功能是,合并同一个工作薄中的其余的所有的工作表,把同一个工作薄中的其它工作表记录全部追加到第一个工作表的后面的VBA代码,将其余的表的数据,全部追加到第一个工作表后面, For j = 1 To Worksheets(MyTable).UsedRange.Columns.Count从每个工作表的第一列到有效列

以下代码的功能是,合并同一个工作薄中的其余的所有的工作表,将其余的表的数据,全部追加到第一个工作表后面,形成完整的唯一的一个表数据。

代码如下,稍后会附上代码说明:

Dim MyCount As Integer
  k = Worksheets(1).UsedRange.Rows.Count + 1
  For MyTable = 2 To Worksheets.Count
     For i = 5 To Worksheets(MyTable).UsedRange.Rows.Count
       For j = 1 To Worksheets(MyTable).UsedRange.Columns.Count
         Worksheets(1).Cells(k, j).Value = Worksheets(MyTable).Cells(i, j).Value
       Next j
       k = k + 1
     Next i
  Next MyTable

注意哦,如上的代码,仅把其它表的第五行的数据至最后一行的数据阵加到第一表的后面,第一行到第四行是标题,不进行追加。For i = 5代表的是从第五行开始阵加。

代码解释

k = Worksheets(1).UsedRange.Rows.Count + 1 获取第一个工作表的最后一行的行号后加1

For MyTable = 2 To Worksheets.Count 从第二个工作表开始循环至最后一个工作表,目的就是通过循环追加其它表到第一表嘛

For i = 5 To Worksheets(MyTable).UsedRange.Rows.Count 每个工作表,仅从第五行至有效数据最后一行,追加到表一。

For j = 1 To Worksheets(MyTable).UsedRange.Columns.Count 从每个工作表的第一列到有效列数据的最大列号做循环。

Worksheets(1).Cells(k, j).Value = Worksheets(MyTable).Cells(i, j).Value 将其它表的有效数据的单元格的值,赋值到第一工作表的相应单元格内。

Tags:同一个 工作 其它

编辑录入:coldstar [复制链接] [打 印]
赞助商链接