You assign the incorrect object name. Change the shape reference to Oval 2 should fix the problem.

Sub MoveBtn()
With Sheet1
If .Range("B1").Value = "Purchase" Then
    .Shapes("Oval 2").IncrementLeft 30
    .Range("B1").Value = "Sales"
    Else:
    .Shapes("Oval 2").IncrementLeft -30
    .Range("B1").Value = "Purchase"
End If

End With

End Sub