Maybe something like this...

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Ctrl As OLEObject
    
    If Target.Address <> "$A$4" Then Exit Sub
    
    For Each Ctrl In Me.OLEObjects
         If TypeName(Ctrl.Object) = "Label" Then Ctrl.Object.BackColor = RGB(51, 102, 255)
    Next Ctrl
    
    On Error Resume Next
    Me.OLEObjects("Label" & Target.Value).Object.BackColor = RGB(151, 102, 155)
    On Error GoTo 0
End Sub
You'll notice that it exits the sub if the target cell is not A4. You'll also notice that error handling has been added, in case a number is entered that doesn't correspond with one of the labels.

Hope this helps!