To get the exact column in a worksheet, use this code.
Option Explicit
Sub Sample()
    Dim ws As Worksheet
    Dim LastCol As Long
    Set ws = Sheets("Sheet1")
    '~~> This check is required else .FIND will give you error on an empty sheet
    If Application.WorksheetFunction.CountA(ws.Cells) = 0 Then
        LastCol = 1
    Else
        LastCol = ws.Cells.Find(What:="*", _
                After:=ws.Range("A1"), _
                Lookat:=xlPart, _
                LookIn:=xlFormulas, _
                SearchOrder:=xlByColumns, _
                SearchDirection:=xlPrevious, _
                MatchCase:=False).Column
    End If
    Debug.Print LastCol
End Sub
EDIT: This is courtesy @brettdj. You can also use the range object to find the last column
Option Explicit
Sub Sample()
    Dim ws As Worksheet
    Dim LastCol As Long
    Dim rng As Range
    Set ws = Sheets("Sheet1")
    Set rng = ws.Cells.Find(What:="*", _
                After:=ws.Range("A1"), _
                Lookat:=xlPart, _
                LookIn:=xlFormulas, _
                SearchOrder:=xlByColumns, _
                SearchDirection:=xlPrevious, _
                MatchCase:=False)
    If rng Is Nothing Then
        LastCol = 1
    Else
        LastCol = rng.Column
    End If
    Debug.Print LastCol
End Sub
To get the last column of a particular row, say row 1 use this
    Debug.Print ws.Cells(1, ws.Columns.Count).End(xlToLeft).Column
Where ws is your relevant worksheet.
Similarly for Row see this.