如何用宏粘贴出excel中的几个sheet?

来源:百度知道 编辑:UC知道 时间:2024/06/10 11:05:23
我想把有很多Sheet的文件中的若干个Sheet挑出来,做在一个文件里,有没有相关的宏呀?
粘贴的时候需要保留格式,不保留链接。

Sub Macro1()
Sheets("数据1").Select
Sheets("数据1").Copy
ActiveWorkbook.SaveAs Filename:="E:\数据汇总\" & 数据5 & ""
ActiveWorkbook.BreakLink Name:="E:\数据.xls", Type:=xlExcelLinks
ActiveWorkbook.Save
ActiveWindow.Close
End Sub

试试看,这是我很早以前搞得一个自己用的汇总表中的一小段,功能跟你要求的相似,改了一下,有点忘了,有什么问题再改吧!
其中 数据1为工作表名
E:\数据汇总\为工作表保存在e盘数据汇总文件夹内
数据5为新保存文件的文件名
E:\数据.xls 为原始文件的路径及文件名

1 Sheets("数据1").Select
2 Sheets("数据1").Copy
3 ActiveWorkbook.SaveAs Filename:="E:\数据汇总\" & 数据5 & ""
4 ActiveWorkbook.BreakLink Name:="E:\数据.xls", Type:=xlExcelLinks
5 ActiveWorkbook.Save
6 ActiveWindow.Close

各句含义
1 工作表选择
2 工作表复制
3 活动工作表保存路径及名称
4 取消活动工作表与原始文件的链接
5 活动工作表保存
6 活动工作表关闭(即屏幕还显示原始的文件)

不需要用宏。直接选中需要拷贝出来的Sheet,然后右键菜单里选“拷