Is there any way to get a shape if you know its Id?
Id
For example:
Dim myshape As Shape myshape.Id = 42 myshape = getShapeById(myshape.Id)
Not sure about by ID, but by name use the sheet Shapes collection object
Set myShape = .Shapes("")
eg
Set myShape = ActiveSheet.Shapes("Rectangle 1")