Excel宏,用于将单元格内容复制到另一工作簿中的特定工作表
我需要的是一种方法,将“ThisWorkbook”(宏所在的位置)中某些单元格的内容发送到另一个工作簿中的特定工作表(与“ThisWorkbook”不同,该工作表的位置不会更改) 由于某些原因,以下操作不起作用:Excel宏,用于将单元格内容复制到另一工作簿中的特定工作表,excel,vba,Excel,Vba,我需要的是一种方法,将“ThisWorkbook”(宏所在的位置)中某些单元格的内容发送到另一个工作簿中的特定工作表(与“ThisWorkbook”不同,该工作表的位置不会更改) 由于某些原因,以下操作不起作用: Sub Transplant() Dim thispath As String Dim targetpath As String 'Set filepaths thispath = ThisWorkbook.FullName targetpath = ThisWorkbook.Pa
Sub Transplant()
Dim thispath As String
Dim targetpath As String
'Set filepaths
thispath = ThisWorkbook.FullName
targetpath = ThisWorkbook.Path & "/subdir/Targetbook.xlsm"
Dim Srcwb As Workbook
Dim Trgwb As Workbook
'Set workbooks
Set Srcwb = Workbooks.Open(thispath)
Set Trgwb = Workbooks.Open(targetpath)
Srcwb.Worksheets("Sheet1").Range(Srcwb .Worksheets("Sheet1").Range("A1"), _
Srcwb.Worksheets("Sheet1").Range("A1").End(xlToRight)).Copy _
Destination:=Trgwb.Sheets("Sheet1").Cells(1, 1)
End Sub
请帮忙
//Leo虽然我没有重新打开活动工作簿,但这与您得到的几乎相同 你能描述一下你要复制的范围吗?您可能会发现
UsedRange
更简单
Sub Transplant()
Dim DWB As Workbook
Dim S As Worksheet
Set S = ThisWorkbook.WorksheetS("Sheet1") ' forgot to rename Source to S
Set DWB = Application.Workbooks.Open(Thisworkbook.Path & "/subdir/Targetbook.xlsm")
Set D = DWB.Worksheets("Sheet1")
S.Range(S.Range("A1"), S.Range("A1").End(xlToRight)).Copy Destination:=D.Cells(1,1)
' S.UsedRange.Copy Destination:=D.Cells(1,1) - this might be easier
End Sub