I think this is what you are trying?
Sub Sample()
Dim c As Range
Dim Ret
Set c = Sheets("CompilePriceAdjustments").Range("E2")
Ret = InputBox("Please Enter Initials - (Only alphabets allowed of 2 Length)", "PRICE INCREASE APPROVER")
Do Until (isString(Ret) And Len(Ret) = 2)
Ret = InputBox("Please Enter Initials - (Only alphabets allowed of 2 Length)", "PRICE INCREASE APPROVER")
Loop
c.Value = UCase(Ret)
'
'~~> Rest of the code
'
End Sub
Function isString(s As Variant) As Boolean
Dim i As Long
isString = True
For i = 1 To Len(s)
Select Case Asc(Mid(s, i, 1))
Case 65 To 90, 97 To 122
Case Else
isString = False
Exit Function
End Select
Next i
End Function
EDIT
I see one flaw in your approach. What if the user wants to cancel and exit? You might want to consider this code?
Sub Sample()
Dim c As Range
Dim Ret
Set c = Sheets("CompilePriceAdjustments").Range("E2")
Ret = InputBox("Please Enter Initials-(Only alphabets allowed of 2 Length)", _
"PRICE INCREASE APPROVER")
'~~> Added Or Ret = "" so that user can cancel the inputbox if required
Do Until (isString(Ret) And Len(Ret) = 2) Or Ret = ""
Ret = InputBox("Please Enter Initials-(Only alphabets allowed of 2 Length)", _
"PRICE INCREASE APPROVER")
Loop
'~~> This is required so that user can press cancel and exit
If Ret = "" Then Exit Sub
c.Value = UCase(Ret)
'
'~~> Rest of the code
'
End Sub
Function isString(s As Variant) As Boolean
Dim i As Long
isString = True
For i = 1 To Len(s)
Select Case Asc(Mid(s, i, 1))
Case 65 To 90, 97 To 122
Case Else
isString = False
Exit Function
End Select
Next i
End Function