怎样把多个excel表合并成多个sheet
答案:6 悬赏:70
解决时间 2021-04-21 19:10
- 提问者网友:夜微涼
- 2021-04-21 04:09
怎样把多个excel表合并成多个sheet
最佳答案
- 二级知识专家网友:摧毁过往
- 2021-04-21 04:21
使用方法:
1、新建一个工作薄,将其命名为你合并后的名字。
2、打开此工作薄。
3、在其下任一个工作表标签上点击右键,选择“查看代码”。
4、在打开的VBA编辑窗口中粘贴以下代码:
Sub 工作薄间工作表合并()
Dim FileOpen
Dim X As Integer
Application.ScreenUpdating = False
FileOpen = Application.GetOpenFilename(FileFilter:="Microsoft Excel文件(*.xls),*.xls", MultiSelect:=True, Title:="合并工作薄")
X = 1
While X <= UBound(FileOpen)
Workbooks.Open Filename:=FileOpen(X)
Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
X = X + 1
Wend
ExitHandler:
Application.ScreenUpdating = True
Exit Sub
errhadler:
MsgBox Err.Description
End Sub
5、关闭VBA编辑窗口。
6、在excel中,工具---宏---宏,选“工作薄间工作表合并”,然后“执行”。
7、在打开的对话窗口中,选择你要合并的300个工作薄。
1、新建一个工作薄,将其命名为你合并后的名字。
2、打开此工作薄。
3、在其下任一个工作表标签上点击右键,选择“查看代码”。
4、在打开的VBA编辑窗口中粘贴以下代码:
Sub 工作薄间工作表合并()
Dim FileOpen
Dim X As Integer
Application.ScreenUpdating = False
FileOpen = Application.GetOpenFilename(FileFilter:="Microsoft Excel文件(*.xls),*.xls", MultiSelect:=True, Title:="合并工作薄")
X = 1
While X <= UBound(FileOpen)
Workbooks.Open Filename:=FileOpen(X)
Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
X = X + 1
Wend
ExitHandler:
Application.ScreenUpdating = True
Exit Sub
errhadler:
MsgBox Err.Description
End Sub
5、关闭VBA编辑窗口。
6、在excel中,工具---宏---宏,选“工作薄间工作表合并”,然后“执行”。
7、在打开的对话窗口中,选择你要合并的300个工作薄。
全部回答
- 1楼网友:万千宠爱
- 2021-04-21 07:16
首先我们要有自己的excel数据,并且我们需要的是microsoft excel,WPS没有这些负责的功能。比如我下面举例的,我自己有205页的数据需要合并,如图所示。
看到这么多数据页要合并,如果是复制粘贴的话,工作量就很大了。我们现在开始合并,首先要在最前页新建一个工作表。如图:
在新建的sheet表中“右键”,找到“查看代码”,然后看到宏计算界面。如图所示:
看到宏计算界面,我们就只需要把下面的代码复制进去,代码如下,效果如下:
Sub 合并当前工作簿下的所有工作表()
Application.ScreenUpdating = False
For j = 1 To Sheets.Count
If Sheets(j).Name <> ActiveSheet.Name Then
X = Range("A65536").End(xlUp).Row + 1
Sheets(j).UsedRange.Copy Cells(X, 1)
End If
Next
Range("B1").Select
Application.ScreenUpdating = True
MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示"
End Sub
做完上面的事情,然后只需要点击工具栏上面的“运行”下的“运行子过程/用户窗体”就可以了,合并完之后会有提示。提示完成之后就可以把宏计算界面关闭了。如图所示:
- 2楼网友:眠于流年
- 2021-04-21 06:47
复制粘贴 。。。
- 3楼网友:输掉的尊严
- 2021-04-21 06:06
要想把多个excel表合并成多个sheet,一共有七步,具体操作如下。
1、新建一个工作薄,将其命名为你合并后的名字。
2、打开此工作薄。
3、在其下任一个工作表标签上点击右键,选择“查看代码”。
4、在打开的VBA编辑窗口中粘贴以下代码:
Sub 工作薄间工作表合并()
Dim FileOpen
Dim X As Integer
Application.ScreenUpdating = False
FileOpen = Application.GetOpenFilename(FileFilter:="Microsoft Excel文件(*.xls),*.xls", MultiSelect:=True, Title:="合并工作薄")
X = 1
While X <= UBound(FileOpen)
Workbooks.Open Filename:=FileOpen(X)
Sheets().Move
After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
X = X + 1
Wend
ExitHandler:
Application.ScreenUpdating = True
Exit Sub
errhadler:
MsgBox Err.Description
End Sub
5、关闭VBA编辑窗口。
6、在excel中,工具---宏---宏,选“工作薄间工作表合并”,然后“执行”。
7、在打开的对话窗口中,选择你要合并的n个工作表。
- 4楼网友:一池湖水
- 2021-04-21 04:37
根据你的思路,可以使用下面代码,判断数据行是否为空的条件可以自己调节
各位兄弟请注意表头不要复制了,所以需要确定数据的起始位置
sub合并sheets()
n=6'源表个数
nstart=8'每个单表数据的起始行数
k=nstart'目标表的行标
fori=1ton
irow=nstart'行标
whilesheets(i).cells(irow+1,2)<>""'以第2列数据为结束标示,确定源表的行数
irow=irow+1
wend
sheets(i).rows(nstart&":"&irow).copy'复制源数据行
sheets(n+1).activate
sheets(n+1).cells(k,1).select
activesheet.paste'粘贴数据
k=k+irow-nstart+1
nexti
endsub
有问题q我80871835
- 5楼网友:摧毁过往
- 2021-04-21 04:30
以WPS 2019版本为例:
关于怎样把多个excel表合并成多个sheet,您可使用WPS参考下述步骤完成操作:
1、打开「表格(Excel)」文档;
2、点击「数据-合并表格-多个工作表合并成一个工作表」;
3、勾选需合并的工作表即可。
提示:在设置合并工作表时也可添加其他「表格(Excel)」文档来选择其他文档的工作表来合并。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯