2016-11-30 4 views
0

セル "A9"のすべての結果を "DDR"というファイル名のXLDOWNを使用してコピーしようとしています&タブ "everett"現在使用しているワークブックに移動します。フォームを外部ワークブックXLDOWNを現在のワークブックにコピー

すべてのヘルプは大幅にこの打撃を与える

Sub XLDOWN1() 
' 
' XLDOWN1 Macro 
' 

' 
    Dim wbSource As Workbook, wbDest As Workbook 
    Dim wsSource As Worksheet, wsDest As Worksheet 
    Dim rngSource As Range, rngDest As Range 

    Set wbSource = Workbooks.Open("G:\GAGC\Accounting\Payroll\Payroll\Analysis Macro Upload\DDR.xlsx", , True) 
    Set wsSource = wbSource.Worksheets("Everett") 


    ws.Range("A9", Range("A9").End(xlDown)).Select 
    Selection.Copy 



    Set rngSource = wsSource.Range("A9").Range(Selection, Selection.End(xlDown)) 
    Set wbDest = ThisWorkbook 
    Set wsDest = wbDest.Worksheets("2016") 
    Set rngDest = wsDest.Range("A4") 'Destination Cell 

    rngDest.Value = rngSource.Value 'Copies values over only 

    wbSource.Close (False) 'Close without saving changes 


End Sub 

答えて

0

を理解されるであろう。あなたが提供したコードには、以下のリファクタリングされたコードを見た後に明確にすべきいくつかの問題がありました。

Dim wbSource As Workbook, wbDest As Workbook 
Dim wsSource As Worksheet, wsDest As Worksheet 
Dim rngSource As Range, rngDest As Range 

'set up source workbook, sheet, range 
Set wbSource = Workbooks.Open("G:\GAGC\Accounting\Payroll\Payroll\Analysis Macro Upload\DDR.xlsx", , True) 
Set wsSource = wbSource.Worksheets("Everett") 
Set rngSource = wsSource.Range(wsSource.Range("A9"), wsSource.Range("A9").End(xlDown)) 

'set up destination workbook, sheet, range 
Set wbDest = ThisWorkbook 
Set wsDest = wbDest.Worksheets("2016") 
Set rngDest = wsDest.Range("A4") 'Destination Cell 

rngSource.Copy Destination:=rngDest 

wbSource.Close False 
関連する問題