The most conventional way would be to loop over your cells:
Sub Replacing()
Dim lr As Long, lc As Long
Dim rng As Range, cl As Range
With Worksheets("Sheet1")
    'Find Last Row and Column
    lr = .Cells(.Rows.Count, 1).End(xlUp).Row
    lc = .Cells(1, .Columns.Count).End(xlToLeft).Column
    'Go through range
    Set rng = .Range(.Cells(1, lc), .Cells(lr, lc))
    For Each cl In rng
        If Right(cl.Value, 1) = "," Then cl.Value = Left(cl.Value, Len(cl.Value) - 1)
    Next cl
End With
End Sub
Better would be to go through memory if your range is actually much larger (for performance sake)
Sub Replacing()
Dim lr As Long, lc As Long, x As Long
Dim arr As Variant
With Worksheets("Sheet1")
    'Find Last Row and Column
    lr = .Cells(.Rows.Count, 1).End(xlUp).Row
    lc = .Cells(1, .Columns.Count).End(xlToLeft).Column
    'Go through array
    arr = .Range(.Cells(1, lc), .Cells(lr, lc)).Value
    For x = LBound(arr) To UBound(arr)
        If Right(arr(x, 1), 1) = "," Then arr(x, 1) = Left(arr(x, 1), Len(arr(x, 1)) - 1)
    Next x
    'Write array back to range
    .Range(.Cells(1, lc), .Cells(lr, lc)).Value = arr
End With
End Sub
And a more less conventional way (alright for small ranges I guess) would be to evalate a range and avoid an iteration. This however comes at the cost of an array formula:
Sub Replacing()
Dim lr As Long, lc As Long
Dim rng As Range
With Worksheets("Sheet1")
    'Find Last Row and Column
    lr = .Cells(.Rows.Count, 1).End(xlUp).Row
    lc = .Cells(1, .Columns.Count).End(xlToLeft).Column
    'Evaluate your range
    Set rng = .Range(.Cells(1, lc), .Cells(lr, lc))
    rng.Value = .Evaluate("IF(RIGHT(" & rng.Address & ",1)="","",LEFT(" & rng.Address & ",LEN(" & rng.Address & ")-1)," & rng.Address & ")")
End With
End Sub