Remove Last x Character(s) in Selected Cells

  • Thread starter Thread starter Guest
  • Start date Start date
One way using the active cell:
ActiveCell.Value = Left(ActiveCell.Value, Len(ActiveCell.Value) - 2)

If you want a specific cell reference:
Range("A1").Value = Left(Range("A1").Value, Len(Range("A1").Value) - 2)

HTH,
Paul
 
One way:

Public Sub RemoveLastXCharacters()
Const cnX As Long = 2
Dim rCell As Range
Dim nLen As Long
For Each rCell In Selection
With rCell
nLen = Len(.Text) - cnX
If nLen <= 0 Then
.ClearContents
Else
.Value = Left(.Text, nLen)
End If
End With
Next rCell
End Sub

Note: If the values are numeric, the last two digits will be "removed",
but the number of displayed digits will still be set by the number
format, so

1.2345

will display as

1.2300

if the format displays 4 digits after then decimal place.
 
Here's an equation to do it in helper column

=left(A1,len(A1)-2)

Do you need it in a macro?
 
Back
Top