如何使用VBA将数据从一个excel文件复制到不同文件夹中的另一个文件?
我是VBA新手。我正在处理一个文件,该文件需要从位于不同文件夹中的另一个文件复制数据如何使用VBA将数据从一个excel文件复制到不同文件夹中的另一个文件?,excel,vba,Excel,Vba,我是VBA新手。我正在处理一个文件,该文件需要从位于不同文件夹中的另一个文件复制数据 文件夹1-->主文件-->仪表板至文件夹2-->计算-->主文件 现在,宏将从“仪表板”工作表执行,数据将从“主文件”复制并粘贴到“仪表板”中 我尝试了一些代码,但都没用 请帮帮我。这是我使用的一个通用复制值宏,希望它能让您走上正确的道路 Sub TransferData() 'transfer stuff from workbook 1 to workbook 2 Dim strPath1 As S
文件夹1-->主文件-->仪表板
至文件夹2-->计算-->主文件
现在,宏将从“仪表板”工作表执行,数据将从“主文件”复制并粘贴到“仪表板”中
我尝试了一些代码,但都没用
请帮帮我。这是我使用的一个通用复制值宏,希望它能让您走上正确的道路
Sub TransferData()
'transfer stuff from workbook 1 to workbook 2
Dim strPath1 As String
Dim strPath2 As String
Dim wbkWorkbook1 As Workbook
Dim wbkWorkbook2 As Workbook
'define paths and filenames
strPath1 = "C:\take from this.xlsx"
strPath2 = "C:\put in this.xlsx"
'open files
Set wbkWorkbook1 = Workbooks.Open(strPath1)
Set wbkWorkbook2 = Workbooks.Open(strPath2)
'copy the values across
wbkWorkbook2.Worksheets("Sheet1").Range("A1:B3").Value = _
wbkWorkbook1.Worksheets("Sheet1").Range("A1:B3").Value
'close the two workbooks
wbkWorkbook1.Close (False)
wbkWorkbook2.Close (True)
End Sub
编辑
由于您将工作簿1设置为运行vba的工作簿,因此在上面的示例中,您将收到错误,因为工作簿1确实已打开
尝试以下代码将数据值从“此工作簿”传输到工作簿2:
Sub TransferDataV2()
'transfer stuff from this workbook to workbook 2
Dim strPath2 As String
Dim wbkWorkbook1 As Workbook
Dim wbkWorkbook2 As Workbook
'define paths and filenames
strPath2 = "C:\put in this.xlsx"
'open files
Set wbkWorkbook1 = ThisWorkbook '### changed this
Set wbkWorkbook2 = Workbooks.Open(strPath2)
'copy the values across
'### change the sheet and range to what you need
wbkWorkbook2.Worksheets("Sheet2").Range("A1:B3").Value = _
wbkWorkbook1.Worksheets("Sheet1").Range("A1:B3").Value
'close the workbook
wbkWorkbook2.Close (True)
End Sub
. 发布(编辑您的OP,添加到末尾)您尝试的内容,并指出失败的具体位置。但当我执行代码时,它显示workbook1已打开。我正在执行Workbook1中的代码。我无法在VBA代码中再次打开它