利用VBA将excel多个工作表数据快速合并到一个工作表方法
发布时间:2015-04-07 09:58:05 作者:佚名
我要评论
下面小编为大家详细介绍利用VBA将excel多个工作表数据快速合并到一个工作表方法,教程很不错,也不是很难,推荐过来,大家一起来学习吧
利用VBA将数据区域不定的多个工作表数据快速合并到一个工作表方法。有需要的朋友可以跟着教程一起来学习!
方法/步骤
分别有工作表1、2、3数据区域如下图所示:



按ALT+F11打开VBE编辑器,在工程窗口下的Microsoft Excel对象右键-插入-模块,新建一个模块1。

输入如下代码:
复制代码
代码如下:Option Explicit
Sub hbgzb()
Dim sh As Worksheet, flag As Boolean, i As Integer, hrow As Integer, hrowc As Integer</p> flag = False
For i = 1 To Sheets.Count
If Sheets(i).Name = "合并数据" Then flag = True
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
Sub hbgzb()
Dim sh As Worksheet, flag As Boolean, i As Integer, hrow As Integer, hrowc As Integer</p> flag = False
For i = 1 To Sheets.Count
If Sheets(i).Name = "合并数据" Then flag = True
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

按ALT+F8打开宏对话框窗口,鼠标单击执行hbgzb宏。

实现如图所示效果:

注意事项
本段VBA代码由于将编辑过的区域作为源数据区域,顾无论该数据源有无数据,只要曾经编辑过皆做为源数据源,做拷贝处理。
以上就是利用VBA将excel多个工作表数据快速合并到一个工作表方法介绍,希望能对大家有所帮助!
相关文章

阳历/农历转换对照表怎么做? Excel制作日历表/万年历的最终版
想要制作阳历/农历转换对照表,,通过这个对照表,你只需知道阳历日期,就可以快速准确的找到对应的农历日期,下面我们就来看看详细制作方法2025-04-10
工作上需要制作一个日历表/万年历,该怎么制作呢?我们需要使用三个excel函数来实现,详细请看下文介绍2025-04-10
Excel中有一个功能非常强大的函数,它就是SUMPRODUCT函数,既能求和、计数、权重计算,还能排名等,今天我们就来看看Excel根据权重求和的技巧2025-04-10
tocol函数哪个版本能用? excel中tocol函数的两种高级用法
TOCOL函数公式非常强大,值得一学,从字面意义可以理解出来,它是将数据转换成一列的,今天分享TOCOL函数的2种高级用法2025-04-10
Excel隐藏行和折叠行有什么不同? 隐藏行和折叠使用方法和区别介绍
excel表格进行操作的时候,发现有隐藏和和折叠行,看上去效果一样,都隐藏了,但是两者是有很大区别的,详细请看下文介绍2025-03-21
Excel工龄计算不再愁! Excel隐藏函数DATEDIF轻松计算精确到天级的工龄
在日常工作中,我们经常需要计算员工的工龄,以便进行人事管理、薪资调整等工作,本文将详细介绍如何在Excel表格中计算工龄,并提供多种实用方法供您选择2025-03-13
Excel数据处理遇到的问题,99%都是由于奇葩的数据格式造成的,今天跟大家整理了几个Excel表格构建的规则,先不要问为什么,照着做就对了2025-03-06
Excel透视表1月到12月不能排序怎么办? 数据透视表日期无法排序解决方法
如图对数据透视表日期进行升序排序后,仍不是我们想要的结果,有可能月份是文本,不能排列,下面我们就来看看详细解决办法2025-03-06
首先咱们得明确一下账龄的概念,简单来说,账龄就是某个账户的余额从产生到现在的时间长度,比如,一年以内的账龄就是那些在过去一年内产生的债权或债务,下面我们就来看看2025-03-06
实现办公自动化! DeepSeek搭配Excel制作自定义按钮的技巧
DeepSeek生成想要的代码很方便,如果将生成的代码放到excel中作为vba代码使用,岂不是能实现办公自动化?下面我们就来看看实现方法2025-03-05




最新评论