Auch wenn Sie CurrentRegion
in Ihrem Code erwähnt haben, ich vermute, dass Sie es nicht brauchen oder zumindest sind sie in der beabsichtigten Weise
ist nicht verwenden Planung Lassen sie unser Arbeitsblatt wie folgt aussieht sagen. die Formeln in Col F Beachten sie?
Das Problem mit .Resize
ist, dass es Zellen enthält, die Formeln hat, auch wenn sie leere Werte zurückgeben.
Unter macroman dem Beispiel
Sub Sample()
With Sheets("Sheet1").Range("A2").CurrentRegion.Offset(1, 0)
.Resize(.Rows.Count - 1, .Columns.Count).Select
End With
End Sub
Ich versuche, alle Zellen mit dem Wert in es aus der 2. Reihe zu kopieren ‚Coz erste Zeile ist die Überschrift/Titel.
Von dem, was ich verstehe, was Sie wollen, können indem der letzten Reihe und letzten Spalte erreicht werden, die Daten hat und das Kopieren.
Ich denke, das ist was du willst? Beachten Sie die Verwendung von LookIn:=xlValues
mit .Find
Sub Sample()
Dim ws As Worksheet
Dim rng As Range
Dim lRow As Long, lCol As Long
Set ws = ThisWorkbook.Sheets("Sheet1")
With ws
lRow = .Cells.Find(What:="*", _
After:=.Range("A1"), _
Lookat:=xlPart, _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
lCol = .Cells.Find(What:="*", _
After:=.Range("A1"), _
Lookat:=xlPart, _
LookIn:=xlValues, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Column
Set rng = .Range(.Cells(2, 1), .Cells(lRow, lCol))
Debug.Print rng.Address
rng.Copy
End With
End Sub
[Größe ändern] (https://msdn.microsoft.com/en-us/library/office/ff196678.aspx). – findwindow
persönliche Präferenz natürlich, aber vielleicht möchten Sie Ihren Namen aus diesem Dateipfad entfernen ... –
@MacroMan niemand würde es bemerkt haben, bis Sie darauf hingewiesen = P – findwindow