Suggest you change your button click event to
Code:
Private Sub cmdInitials_Click() 'removed the parameter
'dim all your variables
Dim i As Integer
Dim strNames As Variant
Dim strInput As String
Dim strOutput As String '<--had to Dim this
strInput = Me.txtInput ' <---need to assign the value from the textbox
strNames = Split(strInput, " ")
For i = LBound(strNames) To UBound(strNames)
strOutput = strOutput & UCase(Left(strNames(i), 1)) '<---changed input to output removed the trailing space
Next i
lblOutPut.Caption = strOutput '<---------------what is strOutput??
End Sub
You did not dim strOutput. You used strInput in the For loop
Note: I just got the initials button to do what I think you wanted.