Here is one way to accomplish that, assuming that words are defined by the virtue of a space separating them. Modify the code for TextBox name if it is not TextBox1.
Private Sub TextBox1_Change()
Dim Spaces As Integer
Spaces = Len(.Text) - Len(Application.Substitute(.Text, Chr(32), ""))
If Spaces < 10 Then Exit Sub
Application.EnableEvents = False
.Text = Trim(.Text)
Application.EnableEvents = True
MsgBox "You are limited to 10 words.", 48, "Too many words."
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
arrSentence = Split(TextBox1.Text, " ")
If UBound(arrSentence) > 9 Then
MsgBox "That's more than 10 words"