Cuenta los espacios.
En aspfacil tienes el código fuente listo para hornear:
http://www.aspfacil.com/codigo/contar.asp
Acabo de ver que no contempla la falta de espacio entre coma y palabra. Lo mismo ocurre con los puntos, el punto y coma, paréntesis, etcétera:
hola, manolo. estoy aquí <- cuatro palabras
hola,manolo. estoy aquí <- tres palabras
hola,manolo.estoy aquí <- dos palabras
Ya dejé mensaje en su foro sugiriendo lo que te digo que añadas:
texto = Replace (texto, chr(46), chr(46)&" ") ' punto
texto = Replace (texto, chr(58), chr(58)&" ") ' dos puntos
texto = Replace (texto, chr(59), chr(59)&" ") ' punto y coma
texto = Replace (texto, chr(44), chr(44)&" ") ' coma
etc...
Es decir, insertar dos espacios después del carácter 'conflictivo' (tú sabrás si lo hay o no dependiendo de lo que tengan que escribir). Con lo cual cuando llega al último replace...
while InStr(1, texto, " ", 1)
texto = Replace(texto, " ", " ")
wend
... si el usuario lo escribió bien no pasará nada. Si por el contrario se olvidó de algún espacio, contará también correctamente.
Saludos.