Поскольку ваш оператор If немного сложнее, чем просто «Сделайте одну вещь, если это условие истинно», вы должны отделить условия от действий в их собственные строки:
Dim product As String
Do Until product = "P" Or product = "p"
product = Left(InputBox("Please enter product number", "Product please", "Enter product number here"), 1)
If product = "P" Or product = "p" Then
MsgBox "Thank you"
ElseIf product = "Enter product number here" Then
Exit Sub
Else
MsgBox "Please enter a valid product number"
End If
Loop
Также, как я заметилв моем комментарии ваше условие ElseIF
никогда не будет выполнено, и вы будете зацикливаться, если вы запустите этот код.