Function Ville(x As String)
Dim t, i&, j&, v$
t = Split(x)
For i = 0 To UBound(t)
If UCase(Left(t(i), 1)) <> LCase(Left(t(i), 1)) Then
If UCase(Left(t(i), 1)) = Left(t(i), 1) Then Exit For
End If
Next i
For j = UBound(t) To 0 Step -1
If UCase(Left(t(j), 1)) <> LCase(Left(t(j), 1)) Then
If UCase(Left(t(j), 1)) = Left(t(j), 1) Then Exit For
End If
Next j
If j >= i Then
v = t(i)
For i = i + 1 To j: v = v & " " & t(i): Next
End If
Ville = v
End Function