Me faltan mas cosas pero voy dejando aca, desp voy modificando este post:
Salida:
Código (vb) [Seleccionar]
Option Explicit
Function uCaseCorrect(txt As String) As String
Dim sFrase As String, sText As String
Dim pos As Long, i As Long, k As Long
Dim signo(4) As String
signo(0) = "¡": signo(2) = "."
signo(1) = "¿": signo(3) = "!": signo(4) = "?"
sText = UCase$(Left$(txt, 1))
sFrase = sText & Mid$(txt, 2)
uCaseCorrect = sFrase
For i = 0 To 4
If InStr(1, sFrase, signo(i)) <> 0 Then
k = 1
Do
pos = InStr(k, sFrase, signo(i))
While Mid$(sFrase, pos + 1, 1) = " "
pos = pos + 1
Wend
sText = UCase$(Mid$(sFrase, pos + 1, 1)) & Mid$(sFrase, pos + 2)
sFrase = Left$(sFrase, pos) & sText
k = k + 1
Loop While InStr(k, sFrase, signo(i)) <> 0
End If
Next i
uCaseCorrect = sFrase
End Function
Private Sub Form_Load()
Debug.Print uCaseCorrect("¡hola! ¿como andas? espero que bien che!!! Que pases bien entonces. chau. bye!")
End Sub
Salida:
Citar
¡Hola! ¿Como andas? Espero que bien che!!! Que pases bien entonces. Chau. Bye!