Sub ChangeName()
'PURPOSE: Determine the currently selected shape
'SOURCE: www.TheSpreadsheetGuru.com/the-code-vault
Dim ActiveShape As Shape
Dim UserSelection As Variant
'Pull-in what is selected on screen
Set UserSelection = ActiveWindow.Selection
'Determine if selection is a shape
On Error GoTo NoShapeSelected
Set ActiveShape = ActiveSheet.Shapes(UserSelection.Name)
On Error Resume Next
ActiveShape.Name = Range("L3").Value
'Do Something with your Shape variable
MsgBox "You have selected the shape: " & ActiveShape.Name
Exit Sub
'Error Handler
NoShapeSelected:
MsgBox "You do not have a shape selected!"
End Sub