Zoek het zoveelste woord in een reeks tekst - VBA-codevoorbeelden

Retourneer het nde woord in tekstreeks

De volgende functie vindt het n-de woord in een string:

Functie 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 As Integer Find_nth_word = "" Current_Word_No = 1 'Verwijder voorloopspaties Phrase = Trim(Phrase) Lengte (van_Phrase) Lengte (van_Strase) = 1 To 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 ' Verwijder de meest rechtse spatie Find_nth_word = Trim(Find_nth_word) End Function

Het heeft twee argumenten nodig - de zin die moet worden gezocht en het woordnummer:

Find_nth_word(“Automateexcel ls 's werelds favoriete Excel-site”,4)

Zal terugkeren "wereld".

Er wordt een spatie geretourneerd als het aantal woorden in de zin kleiner is dan het opgegeven woordnummer.

Dus: Find_nth_word(“Automateexcells 's werelds favoriete Excel-site”,12)
Wordt leeg geretourneerd omdat er geen 12 woorden zijn in de zin "Automateexcells 's werelds favoriete Excel-site".

Downloaden

Klik hier om het .XLSM-bestand uit dit artikel te downloaden

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave