Encuentre la enésima palabra en una cadena de texto - Ejemplos de código VBA

Devuelve la enésima palabra en una cadena de texto

La siguiente función encontrará la enésima palabra en una cadena:

Función Find_nth_word (Phrase As String, n As Integer) As String Dim Current_Pos As Long Dim Length_of_String As Integer Dim Current_Word_No Como entero Find_nth_word = "" Current_Word_No = 1 'Eliminar espacios iniciales Phrase = Trim (Phrase) Length_of_String = Len (Phrase) For Current_Pos = 1 A Length_of_String If (Current_Word_No = n) Then Find_nth_word = Find_nth_word & Mid (Phrase, Current_Pos, 1) End If (Mid (Phrase, Current_Pos, 1) = "") Then Current_Word_No = Current_Word_No + 1 End If Next Current_Pos ' Eliminar el espacio situado más a la derecha Find_nth_word = Trim (Find_nth_word) End Function

Necesita dos argumentos: la frase que se va a buscar y el número de la palabra:

Find_nth_word("Automateexcel es el sitio de Excel favorito del mundo", 4)

Volverá "mundo".

Se devuelve un espacio en blanco si el número de palabras de la frase es menor que el número de palabras especificado.

Entonces: Find_nth_word("Automateexcel es el sitio de Excel favorito del mundo", 12)
Volverá en blanco ya que no hay 12 palabras en la frase "Automateexcel es el sitio de Excel favorito del mundo".

Descargar

Para descargar el archivo .XLSM de este artículo, haga clic aquí

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave