excel VBA najít získat poslední řádek ve sloupci
'VBA to get the last row in column A that has a value.
'Change `A` to the column you care about:
With Sheet1
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
End With
'A shorter way:
LastRow = Sheet1.[A1048576].End(xlUp).Row
'And to get the row of the last cell with a value
'just above the FIRST blank cell VERTICALLY:
LastRow = Sheet1.[A1].End(xlDown).Row
'----------------------------------------------------------
'The most reliable way to get the last row with data
'for the entire sheet is to use the following function:
LastRow = LastUsedRow(Sheet1.[A1])
Function LastUsedRow(r As Range)
On Error Resume Next
r.Parent.AutoFilterMode = False
With r.Cells.Find("*", r, xlFormulas, , , xlPrevious)
LastUsedRow = 1
LastUsedRow = .Row
End With
End Function
excel VBA poslední sloupec v rozsahu
Dim rRange As Range
Dim rDuplicate As Range
Set rRange = ActiveSheet.UsedRange
lFirstRow = rRange.Row
lLastRow = rRange.Rows.Count + rRange.Row - 1
lFirstColumn = rRange.Column
lLastColumn = rRange.Columns.Count + rRange.Column - 1
' New reference to current range (can be truncated)
Set rDuplicate = Range(Cells(lFirstRow, lFirstColumn), _
Cells(lLastRow, lLastColumn))