怎么用vba将一个工作薄中指定的内容复制到多个不同名字的工作簿中

如题所述

这个任务只能通过VBA代码来完成。下面是一个示例代码:

Sub ttttt()

mypath = "C:\Users\SHUANG\Desktop\New folder (3)"

For Each myfile In CreateObject("scripting.FileSystemObject").GetFolder(mypath).Files

With Workbooks.Open(myfile)

.sheets("表名").range("范围").value = ThisWorkbook.sheets("表名").range("范围").value

.save

.close False

End With

Next

End Sub

在代码中,mypath代表存放文件的文件夹路径。通过循环每一个文件并打开,将当前工作薄中的指定内容复制到其他工作薄中。

具体来说,这段VBA代码的作用是:遍历指定文件夹下的所有文件,对每个文件执行以下操作:

1. 使用CreateObject("scripting.FileSystemObject").GetFolder(mypath).Files获取文件夹内的所有文件。

2. 使用Workbooks.Open(myfile)打开文件。

3. 将当前工作薄的指定范围的内容复制到打开的工作薄的相同范围。

4. 保存并关闭打开的工作薄。

需要注意的是,这里的“表名”和“范围”需要根据实际情况进行调整。例如,如果要复制的内容在工作表“Sheet1”中的A1到A10范围,那么在代码中应将“表名”改为“Sheet1”,将“范围”改为“A1:A10”。

此外,这段代码假设目标工作簿与源工作簿中的表名和范围完全一致。如果目标工作簿中的表名或范围不同,需要进行相应的调整。此代码片段适合在Excel的VBA编辑器中运行。
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜