En este artículo, aprenderá a extraer la enésima palabra de la cadena de texto. Usaremos código VBA para crear UDF para encontrar la enésima palabra en una cadena.

Necesitamos seguir los pasos a continuación:

Haga clic en la pestaña Desarrollador Desde el grupo Código, seleccione Visual Basic

img1

  • Haga clic en Insertar y luego en Módulo

img2

  • Esto creará un nuevo módulo.

Ingrese el siguiente código en el Módulo

Función ExtractNthWord (x como cadena, y como entero)

Dim palabra () como cadena

Dim wordCount As Long

palabra = VBA.Split (x, «»)

wordCount = UBound (palabra)

Si wordCount <1 O (y – 1)> wordCount O y <0 Entonces

ExtractNthWord = «»

Else

ExtractNthWord = palabra (y – 1)

Finalizar si

Finalizar función

img3

La nueva fórmula UDF se crea con el nombre ExtractNthWord. Hay dos parámetros; la primera es la celda de búsqueda de la que se deben extraer los datos y la segunda es el número n.

A continuación se muestra la instantánea de los datos:

img4

  • Para recuperar 2 ^ nd ^ palabra de la columna A, la fórmula será

= ExtraerNthWord (A2,2)

img5

  • De manera similar, para extraer 3 ^ rd ^ palabra, la fórmula será

= ExtraerNthWord (A2,3)

img6

  • Podemos usar la celda auxiliar para almacenar el valor del segundo argumento; esto nos permitirá ver los resultados más rápidamente.

  • Aquí, la celda auxiliar es D1, en la que podemos ingresar el n-ésimo número de palabra que queremos ver como salida.

img7

Ahora, solo necesitamos cambiar el número en la celda D1 y los resultados se cambiarán automáticamente en consecuencia.