问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

VBA合并Excel多工作表数据到一表的快速方法

创作时间:
作者:
@小白创作中心

VBA合并Excel多工作表数据到一表的快速方法

引用
1
来源
1.
http://www.haodianba.com/shuma/67655.html

如何利用VBA快速合并多个工作表的数据到一个工作表(数据区域不定)?有兴趣的朋友可以按照本教程来学习哦。

步骤/方法

假设存在工作表1、2、3等,其数据区域各不相同。

  1. ALT+F11组合键打开VBE编辑器,然后在工程窗口下的Microsoft Excel对象处右键单击,选择“插入 - 模块”,这样就新建了一个名为模块1的模块。

  2. 接着输入以下代码:

Option Explicit

Sub hbgzb()
    Dim sh As Worksheet
    Dim flag As Boolean
    Dim i As Integer
    Dim hrow As Integer
    Dim hrowc As Integer
    
    flag = False
    For i = 1 To Sheets.Count
        If Sheets(i).Name = "合并数据" Then
            flag = True
        End If
    Next
    
    If flag = False Then
        Set sh = Worksheets.Add
        sh.Name = "合并数据"
        Sheets("合并数据").Move after:=Sheets(Sheets.Count)
    End If
    
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> "合并数据" Then
            hrow = Sheets("合并数据").UsedRange.Row
            hrowc = Sheets("合并数据").UsedRange.Rows.Count
            If hrowc = 1 Then
                Sheets(i).UsedRange.Copy Sheets("合并数据").Cells(hrow, 1).End(xlUp)
            Else
                Sheets(i).UsedRange.Copy Sheets("合并数据").Cells(hrow + hrowc - 1, 1).Offset(1, 0)
            End If
        End If
    Next i
End Sub
  1. 之后,按ALT+F8组合键打开宏对话框窗口,鼠标点击执行名为hbgzb的宏。

达成的效果

注意要点:这段VBA代码是把编辑过的区域当作源数据区域的,所以不管这个数据源有没有数据,只要曾经被编辑过,都会被当作源数据源来进行拷贝操作。

以上便是利用VBA快速合并Excel中多个工作表数据到一个工作表的方法介绍,期望能给大家带来帮助!

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号