2017-02-17 1 views
0

Der Fehler wird in der Zeile vor dem End-Sub angezeigt. Wie wird der Bereich mit der letzten berechneten Zeile richtig ausgewählt?1004 Anwendungsdefinierter oder Objektdefinierter Fehler

Sub My_Script() 
Dim LastRow As Long 
    With ActiveSheet 
     LastRow = .Cells(.Rows.Count, "D").End(xlUp).Row 
    End With 
    ActiveSheet.Range(Cells(LastRow, Columns("D:AH"))).Select 
End Sub 

Antwort

1

Der folgende Code wählen Sie alle Zellen in der LastRow nur aus Spalte "D" auf Spalte "AH".

Sub My_Script() 

Dim LastRow As Long 

With ActiveSheet 
    LastRow = .Cells(.Rows.Count, "D").End(xlUp).Row 
    .Range(.Range("D" & LastRow), .Range("AH" & LastRow)).Select 
End With 

End Sub 

Wenn Sie alle Zeilen auszuwählen wollte (aus Zeile 1-LastRow), von Spalte „D“ auf Spalte „AH“.

Sub My_Script() 

Dim LastRow As Long 

With ActiveSheet 
    LastRow = .Cells(.Rows.Count, "D").End(xlUp).Row 
    .Range(.Range("D1"), .Range("AH" & LastRow)).Select 
End With 

End Sub 

Hinweis: nicht sicher, warum Sie diesen Bereich Select wollen? Sie können diese Range auf eine Variable vom Typ Range setzen und später auf Copy oder was auch immer Sie damit machen wollen. Es gibt kaum einen Grund, jemals Select zu verwenden.

Verwandte Themen