Vba: tekst tussen twee tekens extraheren


U kunt de volgende aangepaste functie in VBA maken om tekst tussen twee specifieke tekens te extraheren:

 Function ExtractBetween(this_text, start_char, end_char)

StartPosition = InStr(this_text, start_char)
EndPosition = InStr(this_text, end_char)

ExtractBetween = Mid(this_text, StartPosition + 1, EndPosition - StartPosition - 1)

End Function

U kunt deze functie vervolgens gebruiken om de tekst tussen twee specifieke tekens te extraheren naar een specifiek teken in Excel.

Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.

Voorbeeld: VBA gebruiken om tekst tussen twee tekens te extraheren

Stel dat we de volgende dataset in Excel hebben met daarin de ID-waarden en de totale omzet van verschillende producten in een bedrijf:

Stel dat we VBA willen gebruiken om de tekst tussen haakjes voor elke cel in kolom A te extraheren en de resultaten in kolom C te retourneren.

We kunnen hiervoor de volgende functie maken:

 Function ExtractBetween(this_text, start_char, end_char)

StartPosition = InStr(this_text, start_char)
EndPosition = InStr(this_text, end_char)

ExtractBetween = Mid(this_text, StartPosition + 1, EndPosition - StartPosition - 1)

End Function

We kunnen vervolgens de volgende formule in cel C2 typen om de tekst tussen haakjes te extraheren voor de tekst in cel A2 :

 =ExtractBetween( A2 , "(", ")")

We kunnen vervolgens op deze formule klikken en deze naar elke resterende cel in kolom C slepen:

VBA extraheert tekst tussen twee specifieke tekens

In kolom C wordt nu de tekst tussen haakjes weergegeven voor elke overeenkomende cel in kolom A.

Opmerking : deze formule werkt door de functie Instr in VBA te gebruiken om de positie van specifieke begin- en eindtekens te extraheren, en vervolgens de functie Mid te gebruiken om alle tekst tussen die twee tekens terug te geven.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken kunt uitvoeren met VBA:

VBA: het aantal tekens in een string tellen
VBA: hoe controleer je of een string een andere string bevat?
VBA: cellen tellen met specifieke tekst

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert