2013-04-23 88 views
0

我需要的是將「ThisWorkbook」(其中宏是)的某些單元格的內容發送到另一個工作簿中的特定工作表的位置這將不會改變,不像 「的ThisWorkbook」)用於將單元格內容複製到另一個工作簿中的特定工作表的Excel宏

出於某種原因,這低於這麼想的工作:

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 

請幫幫忙!

//利奧

回答

0

這幾乎是一樣的,你已經得到的東西,雖然我沒有重新打開活動工作簿。

你能描述你想複製的範圍嗎?您可能會發現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 
相關問題