如何用简便方法将同一个文件夹里多个格式相同的WPS表格快速复制到同一个工作簿中
发布时间:2023-09-22 23:50:19
1.原始数据所在工作簿包含多个格式相同的工作表,只不过每个工作表内容不同,比如说不同人名的工作表数据或者不同部门填写的数据。
2.在原始数据同目录下新建一个工作簿,建立两个工作表,名称分别为“首页”和“合并汇总表”。
3.按Alt+F11进入VBA代码编辑和调试界面。
4.根据下图提示,插入一个模块。
5.将下述代码粘贴到模块空白处:
Sub CombineSheetsCells()
Dim wsNewWorksheet As Worksheet
Dim cel As Range
Dim DataSource, RowTitle, ColumnTitle, SourceDataRows, SourceDataColumns As Variant
Dim TitleRow, TitleColumn As Range
Dim Num As Integer
Dim DataRows As Long
DataRows = 1
Dim TitleArr()
Dim Choice
Dim MyName$, MyFileName$, ActiveSheetName$, AddressAll$, AddressRow$, AddressColumn$, FileDir$, DataSheet$, myDelimiter$
Dim n, i
n = 1
i = 1
Application.DisplayAlerts = False
Worksheets("合并汇总表").Delete
Set wsNewWorksheet = Worksheets.Add(, after:=Worksheets(Worksheets.Count))
wsNewWorksheet.Name = "合并汇总表"
MyFileName = Application.GetOpenFilename("Excel工作薄 (*.xls*),*.xls*")
If MyFileName = "False" Then
MsgBox "没有选择文件!请重新选择一个被合并文件!", vbInformation, "取消"
Else
Workbooks.Open Filename:=MyFileName
Num = ActiveWorkbook.Sheets.Count
MyName = ActiveWorkbook.Name
Set DataSource = Application.InputBox(prompt:="请选择要合并的数据区域:", Type:=8)
AddressAll = DataSource.Address
ActiveWorkbook.ActiveSheet.Range(AddressAll).Select
SourceDataRows = Selection.Rows.Count
SourceDataColumns = Selection.Columns.Count
Application.ScreenUpdating = False
Application.EnableEvents = False
For i = 1 To Num
ActiveWorkbook.Sheets(i).Activate
ActiveWorkbook.Sheets(i).Range(AddressAll).Select
Selection.Copy
ActiveSheetName = ActiveWorkbook.ActiveSheet.Name
Workbooks(ThisWorkbook.Name).Activate
ActiveWorkbook.Sheets("合并汇总表").Select
ActiveWorkbook.Sheets("合并汇总表").Range("A" & DataRows).Value = ActiveSheetName
ActiveWorkbook.Sheets("合并汇总表").Range(Cells(DataRows, 2), Cells(DataRows, 2)).Select
Selection.PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
DataRows = DataRows + SourceDataRows
Workbooks(MyName).Activate
Next i
Application.ScreenUpdating = True
Application.EnableEvents = True
End If
Workbooks(MyName).Close
End Sub
6.在“首页”工作表中按下图示范插入一个窗体控件并指定宏为插入的代码名称。
7.点击“首页”工作表中插入的按钮,根据提示,浏览到原始数据工作簿。
8.下一步,用鼠标选择要合并的数据范围。
注意:每个工作表数据可能不一样,比如说有的是10行数据,有的是30行数据。在这里可以用鼠标选择任意工作表的一个较大范围,比如说A1:D100,保证比最多行数的工作表数据还多就可以,一会再删除空行。
9.点击确定按钮,待代码运行完毕后,所有的数据就都合并到了“合并汇总表”中。
注意:
1)A列的文本说明右侧的数据来自于原始数据表的哪个工作表;
2)数据之间会有一些空行,下面通过筛选删除。
10.选中全部数据区域,执行自动筛选。然后选择其中一个字段,选择“空白”和标题内容。
11.然后将筛选出来的无用行鼠标右键删除,再删除A列整列即可
猜你喜欢
- 很多朋友在Word2016中找不到具体的预览按钮,这里介绍Word2016怎么打印预览,提供参考。 1、我们打开一
- 近来有不少升级了Win10 1909系统的设备用户反映,资源管理器出现了卡顿现象,严重的甚至无法正常查看电脑磁盘内的数据资料。当然,解决问题
- Win10桌面模式快捷切换怎么操作?在Win10系统中有正常的桌面的模式和平板模式两个运行模式,方便平板式笔记本电脑的用户在连接键盘鼠标的桌
- 当我们使用win10操作系统的时候,一些同伴希望安装最新的操作系统win101903。因此,除了在系统设置中进行更新和安全的直接升级外,该版
- 我们在使用Win10电脑时经常会用到浏览器,如果浏览器出现了打不开网页但能上网问题,那么这样的情况怎么解决呢?有很多人不知道该如何解决,今天
- wps页眉中添加横线的方法打开一篇WPS文稿,点击插入菜单。 插入菜单中点击页眉和页脚。  
- word2013怎么进行分栏排版word2013分栏排版的步骤如下:步骤一:这里以word2013为例,wps等也是类似的。打开word文档
- win10系统是一个非常优秀的智能系统,基本上什么会影响用户使用系统问题智能win10系统将自动修复解决,但在智能系统也不能解决最近有很多朋
- 有时候我们从别处复制过来的内容,一行还未完经常会自动另起一行,这是怎么回事呢?大多是回车符(WORD的段落标记)导致的,操作方法如下:首先显
- word2010怎么把doc转为html格式呢?很多用户对此还不是很清楚,小编这里就给大家带来有关word2010怎么把doc转为html格
- 背景介绍:在尝试了多个版本屡次失败报错之后,在最近要安装Office时终于把这个问题解决了,此前都是用wps来代替。wps本来没什么问题,运
- 雨树风是一个很容易使用的品牌系统,这个系统的性能和安全性、稳定性等都很好,但是很多用户不知道如何安装该系统,所以让我们来看看本站为您准备的安
- 对于购买了苹果 AirPods 的用户,如果想要自定义这款蓝牙耳机的设置,需要先将其与 iPhone 进行连接。值得注意的是,当您在 iPh
- word文档软件相信大家都不会陌生,我们电脑的系统一般都自带有word软件。在平常的办公工作中word软件成为不少朋友必须要用到的软件之一,
- 如何让扫描版pdf变得更小更清晰?其实说难也很简单,就是需要用常用的几个软件来处理一下,下面我们来详细说一下,需要的朋友可以参考下如何让扫描
- 激活office2010出现0x80070190的提示 以管理员身份运行下就可以解决。
- win10提示此台电脑不满足录制剪辑的硬件要求处理方案?有些功能win10虽然给你提供了,但并不代表你就能直接使用起来。有用户要录屏,刚打开
- iOS16.1.1 主要是针对已知存在的安全漏洞进行更新,除了系统漏洞的修复更新,还针对 16.1 版本和之前版本的做相关的修复,如:修复了
- B系列可用于信封和护照。B-系列被广泛用于描述纸张尺寸和尺寸的印刷机,包括数码印刷机的印刷行业。B3纸张用于打印两名美国信或A4页面的侧端使
- 想要做办公室第一个下班的人,怎么可以不用这6个Word快速编辑的技巧呢?!一、Word自动求和Word中的表格也可以自动求和哟~借助快捷键~