Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/03/2007, 13:34
Avatar de 3pies
3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 11 meses
Puntos: 144
Re: Extraer la primera letra de cada palabra

Aquí lo tienes:
Código:
Sub iniciales()
'el texto puede ser el valor de un rango, pero
'en este ejemplo, yo te pongo el texto directamente
texto = "Carlos Arguiñano"
'Descomponemos la texto, en partes,
'para lo cual indicamos el delimitador " ", aunque
'por defecto, podríamos haberlo omitido, pues es ese mismo (espacio),
'con lo cual tendremos tantas palabras, como estén separadas por espacios
texto = Split(Trim(texto), " ", -1, 1)
'miramos las palabras que componen el texto,
'para lo cual le decimos que recorra desde el primer
'valor de la matriz (empieza en cero), hasta el máximo
'valor (nº de la última palabra) que lo obtenemos con el UBound
For i = 0 To UBound(texto)
    'ponemos la inicial en mayúsculas, y el resto de las letras no nos interesan
    texto(i) = UCase(Left(texto(i), 1))
Next
'Unimos las textos, con la función Join
texto = Join(texto)
'quitamos el espacio que separa las iniciales
texto = Replace(texto, " ", "")
'ponemos las iniciales
Range("A1") = texto
End Sub
Salu2