The previous response made some assumptions that might not be true, so here
is a macro that makes no assumptions: it finds the last used row on the sheet
based on the columns in UsedRange and then finds the first non-empty cell on
that row.
This process takes into account things like "ragged" last row entries; i.e.
where not all used columns may have an equal number of entries, and also
disregards the current UsedRange value since you may have deleted entries in
rows/columns which would cause UsedRange to be incorrect.
Sub FirstOfLast()
Dim FirstColumn As Integer
Dim LastRow As Long
Dim testRow As Long
Dim LC As Integer
FirstColumn = Columns.Count + 1 ' make larger than possible response
For LC = 1 To ActiveSheet.UsedRange.Columns.Count
testRow = Cells(Rows.Count, LC).End(xlUp).Row
If testRow > LastRow Then
LastRow = testRow
End If
Next
If Not IsEmpty(Cells(LastRow, 1)) Then
FirstColumn = 1
Else
FirstColumn = Cells(LastRow, 1).End(xlToRight).Column
End If
'select first used cell in last used row
Cells(LastRow, FirstColumn).Activate
End Sub