你好,我在D盘下wb文件夹中有一个叫sa1.xlsx 的表格,希望用宏命令打开这个表格,并将其sheet2中的全部内容复制到当前运行宏的表格的sheet3里面,该如何写,谢谢.
打开别的表格可以用Workbooks.Open方法打开一个Excel工作簿,这个函数的具体用法和参数如下:
Workbooks.Open(FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)
其中FileName是必选的参数,表示要打开的工作簿名,如果没有指定路径,则代表当前路径。另外14个是可选参数,除了密码参数,其他的一般很少用。具体的含义可以参看VBA的帮助。
实例:
Workbooks.Open "F:\test.xls" ‘表示打开F盘根目录名称为test.xls的文件
可以打开F盘的test.xls文件。
复制别的表格可以用Copy方法。选中你要复制的工作表,然后复制工作表中的所有内容,然后粘贴到你要复制到的工作薄。假设你要复制的是C盘用户文档下的123.xls文件中的Sheet5工作表,需要复制到你已经打开的第一个工作薄Book1,具体的实现代码为:
Sub Macro()
’下面一行代码表示打开C盘用户文档文件夹中名称为123.xls的文件
Workbooks.Open Filename:= _
"C:\Documents and Settings\Administrator\My Documents\123.xls"
Sheets("Sheet5").Select ‘选中你要复制的工作表Sheet5 ‘
Cells.Select '选中Sheet5中所有的单元格
Selection.Copy '复制选中的内容
Windows("Book1").Activate '把工作薄Book1置为当前工作薄
ActiveSheet.Paste '把复制的内筒粘贴的当前工作薄Book1
End Sub
追问这么详细!谢谢您
你好,运行这句出问题,文字出现黄色标记了,
Set st = ActiveWorkbook.Sheet3
非常希望你说一下报错的内容,这样修改试试看:
Set st = ActiveWorkbook.Sheets("Sheet3")
老师你好,现在是这样
3 Workbooks.Open "d:\hello\task.xls"
4 ActiveWorkbook.Sheet1.Cells.Copy st.Cells
我就是想把task.xls中的sheet1复制到当前空白表格的sheet2里面,该如何写,目前运行出错,在第4行
对于不明白的程序错误,请粘贴错误行的内容,以及错误说明内容。
本回答被提问者采纳