¿Cómo puedo extraer una palabra de una frase según su posición?

Mi pregunta esta relacionada con lo siguiente:

Si tengo la frase "Colombia país rico en fauna" quisiera extraer la cuarta palabra (rico). ¿Cuál debe ser el procedimiento que debo utilizar?

Respuesta
1

Guarde esta función en un módulo de VBA

Public Function extraer(strFrase As String, intPosicion As Integer) As String
'Función para extraer una palabra de una frase de acuerdo con la posición
'Parámetros:
' strFrase --> Frase a examinar
' intPosicion --> Posición de la palabra en la frase
'Ejemplo:
' extraer("Eduardo Pérez Fernández", 1) --- Retorna Eduardo (Primera palabra de la frase)
' extraer("Eduardo Pérez Fernández", 2) --- Retorna Pérez (Segunda palabra de la frase)
' extraer("Eduardo Pérez Fernández", 3) --- Retorna Fernández(Tercera palabra de la frase)
' extraer("Eduardo Pérez Fernández", 4) --- Retorna ! Error ...! (La posición supera el número de palabras)
'
'Elaborada Por:Eduardo Pérez Fernández
 'Fecha        :  5/10/2021
 Dim PalArray() As String
 Dim ctapalabras As Integer
 PalArray() = Split(strFrase)
 ctapalabras = UBound(PalArray()) + 1
 If ctapalabras < intPosicion Then
   extraer = "!! Error ...!!"
   Exit Function
 End If
 extraer = Split(strFrase)(intPosicion - 1)
End Function

Observe que utilizo 2 parámetros, esto es, la frase que contiene las palabras y la posición de la palabra, si la posición supera el número de palabras retorna el mensaje de error.

Puede llamar esta función desde cualquier parte, consulta, formulario o código VBA, observe los ejemplos.

¡Gracias! Don Eduardo, es usted un verdadero experto, sin saberlo me respondió otra pregunta que tenía y era contar las palabras que tenía un campo texto. Con esta función me respondió las dos. Mil y mil gracias. Dios lo bendiga. 

Con mucho gusto y me alegro le haya servido

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas