2017-07-05 2 views
0

ブックを開き、A7からL7までの範囲を最後の情報行(下方向)まで選択してコピーしようとしています。変数が適切に定義されていないと思います。どんな助け?オブジェクト定義エラー - 情報の最後の行までの範囲のコピー

Sub Subtotals() 
Dim DT As Workbook 
Dim lRowDT As Integer 


Set DT = Workbooks.Open("C:\Users\ricardo\Desktop\Data Fuel.xls") 
lRowDT = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 

Workbooks("Data Fuel.xls").Worksheets("Data").Activate 
Worksheets("Data").Range("A7:L" & lRowDT).Copy 

End sub 
+0

どの行でエラーが表示されますか? – YowE3K

+0

lRowDT = ActiveSheet.Cells(Rows.Count、1).End(xlUp).Row –

+1

"Data Fuel.xls"ブックを開いた後の 'ActiveSheet'は' Chart'ですとは思いませんか? – YowE3K

答えて

0

カラムL以上のデータがない場合は、このコードが適しています。

Sub Subtotals() 
Dim DT As Workbook 
Dim lRowDT As Integer 
Dim Ws As Worksheet 
Dim rngDB As Range, r As Long, c As Long 

    Set DT = Workbooks.Open("C:\Users\ricardo\Desktop\Data Fuel.xls") 
    'lRowDT = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 

    Set Ws = Workbooks("Data Fuel.xls").Worksheets("Data") 
    With Ws 
     r = .Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 
     c = .Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column 
     Set rngDB = .Range("a7", .Cells(r, "L")) 
    End With 
    rngDB.Copy 
End Sub 
+0

Aとその間の列Lにもデータがあります。 –

+0

私はA、B、C、H、I、Lのデータを持っていますが、途中にデータはありませんが、すべてを選択する必要があります。あなたの助けをありがとう –

+0

lRowDTでそれは私に0を与え、Rows.Count = 1048576で与えている。しかし、私は理由を知らない。 –

関連する問題