VBA-splitfunctie

Zoals de naam suggereert, is Split een functie die tekenreeksen in verschillende delen splitst. We hebben veel van dergelijke functies in Excel-werkbladen zoals links rechts en midden functie om dit te doen. Maar wanneer we een string nodig hebben om in delen te differentiëren, gebruiken we een Split-functie in VBA. Het is een van de beste functies in VBA om verschillende soorten bewerkingen op tekenreeksen uit te voeren.

De gesplitste functie is in feite een substringfunctie die een string als invoer neemt en een andere string als uitvoer geeft. Het enige verschil tussen de andere substringfunctie, zoals links, rechts en midden en de splitfunctie, is dat de functie LINKS, RECHTS & MIDDEN slechts één string als invoer of argument neemt en één string als uitvoer retourneert, terwijl de functie SPLIT een reeks strings retourneert als output.

Formule voor splitfunctie in Excel VBA

De functie VBA Split heeft de volgende syntaxis:

Laat me eerst de argumenten voor de VBA-splitsfunctie toelichten:

  • Expression As String: Dit is een verplicht argument in de VBA Split-functie. Expressie als string verwijst naar de string die we in delen willen splitsen.
  • Scheidingsteken: dit is een optioneel argument. Het is het karakter dat wordt gebruikt om snaren in delen te breken. Maar als we geen scheidingsteken opgeven, behandelt VBA ruimte "" als standaardscheidingsteken.
  • Limiet: dit is ook een optioneel argument. Limiet betekent het maximale aantal delen dat we van een string willen doen. Maar nogmaals, als we geen limiet bieden voor de functie, behandelt VBA deze als standaard -1, wat betekent dat de tekenreeks uit elkaar valt telkens wanneer er een scheidingsteken in de tekenreeks staat.
  • Vergelijk: dit laatste argument is ook een optioneel argument. Vergelijk is een methode die wordt beschreven als een van de onderstaande twee:
  1. Ofwel is het 0, wat betekent dat Split een binaire vergelijking uitvoert, wat betekent dat elk teken overeen moet komen.
  2. Of het kan 1 zijn, wat betekent dat de Split-functie een tekstuele vergelijking zal maken.

In een paar voorbeelden zal alles duidelijk zijn. Maar laat me eerst een heel eenvoudig voorbeeld geven van wat deze functie doet. Stel dat we een invoertekenreeks hebben aangezien ANAND EEN GOEDE JONGEN IS. De gesplitste reeks breekt deze in delen elk woord afzonderlijk. We kunnen de Split-functie ook gebruiken om een ​​aantal woorden in een string te tellen of we kunnen het gebruiken om slechts een bepaald aantal woorden in een bepaalde string uit te voeren.

Hoe Excel VBA Split-functie te gebruiken?

We zullen leren hoe we een VBA Split Excel-functie kunnen gebruiken met enkele voorbeelden.

U kunt deze VBA Split Excel-sjabloon hier downloaden - VBA Split Excel-sjabloon

VBA-splitfunctie - Voorbeeld # 1

Hoe zit het met het gebruik van de bovenstaande string ANAND IS A GOED BOY met split-functie.

Opmerking: als u de Split-functie in VBA wilt gebruiken, moet u ervoor zorgen dat de ontwikkelaaroptie is ingeschakeld via het tabblad Bestand in het gedeelte Opties.

Stap 1: Ga naar het tabblad Ontwikkelaars en klik op Visual Basic .

Stap 2: Er verschijnt een projectvenster om op blad 1 te klikken om het codevenster te openen.

Stap 3: Wanneer het codevenster verschijnt, declareert u een subfunctie om de code te schrijven.

Code:

 Sub-monster () Einde Sub 

Stap 4: Declareer twee variabelenmatrices en één als tekenreeksen A en B.

Code:

 Sub-monster () Dim A als tekenreeks Dim B () als tekenreeks-einde Sub 

Stap 5: Sla de waarde van de string op in A.

Code:

 Sub-monster () Dim A als tekenreeks Dim B () als tekenreeks A = "ANAND IS EEN GOEDE JONGEN" Einde Sub 

Stap 6: Sla in B array de waarde van A op met behulp van de splitsfunctie zoals hieronder wordt getoond.

Code:

 Sub-monster () Dim A als string Dim B () als string A = "ANAND IS EEN GOEDE JONGEN" B = Split (A) End Sub 

Stap 7: Gebruik For Loop om elke string te breken.

Code:

 Sub-voorbeeld () Dim A als tekenreeks Dim B () als tekenreeks A = "ANAND IS EEN GOEDE JONGEN" B = Split (A) Voor i = LBound (B) Naar UBound (B) strg = strg & vbNewLine & "Stringnummer "& i &" - ​​"& B (i) Volgende beëindig ik Sub 

Stap 8: Geef het weer met de Msgbox-functie.

Code:

 Sub-voorbeeld () Dim A als tekenreeks Dim B () als tekenreeks A = "ANAND IS EEN GOEDE JONGEN" B = Split (A) Voor i = LBound (B) Naar UBound (B) strg = strg & vbNewLine & "Stringnummer "& i &" - ​​"& B (i) Volgende i MsgBox strg End Sub 

Stap 9: Voer de code uit met de onderstaande knop Uitvoeren.

We krijgen dit als uitvoer zodra we de bovenstaande code uitvoeren.

VBA-splitfunctie - Voorbeeld # 2

We zullen nu proberen input van een gebruiker te nemen en de string in delen te splitsen.

Stap 1: Ga naar het tabblad van de ontwikkelaar en klik op Visual Basic om de VB-editor te openen.

Stap 2: Klik op Blad 2 in het eigenschappenvenster om het codevenster te openen.

Stap 3: Declareer in het codevenster een subfunctie om de code te schrijven.

Code:

 Sub Sample1 () Einde Sub 

Stap 4: Declareer twee variabelen één als String en één als Array String.

Code:

 Sub Sample1 () Dim A als String Dim B () As String End Sub 

Stap 5: Neem de waarde van de gebruiker en sla deze op in de A met Inputbox-functie.

Code:

 Sub Sample1 () Dim A als String Dim B () As String A = InputBox ("Voer een string in", "Moet spaties hebben") End Sub 

Stap 6: Sla de waarde van A op in Matrix B met behulp van de Split-functie.

Code:

 Sub Sample1 () Dim A als String Dim B () As String A = InputBox ("Voer een string in", "Moet spaties bevatten") B = Split (A) End Sub 

Stap 7: Gebruik For Loop om elke string te breken.

Code:

 Sub Sample1 () Dim A als tekenreeks Dim B () als tekenreeks A = InputBox ("Voer een tekenreeks in", "Moet spaties bevatten") B = Split (A) voor i = LBound (B) tot UBound (B) strg = strg & vbNewLine & "String Number" & i & "-" & B (i) Volgende i End Sub 

Stap 8: Geef het weer met de Msgbox-functie.

Code:

 Sub Sample1 () Dim A als tekenreeks Dim B () als tekenreeks A = InputBox ("Voer een tekenreeks in", "Moet spaties bevatten") B = Split (A) voor i = LBound (B) tot UBound (B) strg = strg & vbNewLine & "String Number" & i & "-" & B (i) Volgende i MsgBox strg End Sub 

Stap 9: Voer de code uit met de knop Uitvoeren. Zodra we de code hebben uitgevoerd, krijgen we een invoerbericht om een ​​string te schrijven. Schrijf "IK BEN EEN GOEDE JONGEN" als invoer in het invoervak ​​en druk op ok om het resultaat te zien.

VBA-splitfunctie - Voorbeeld # 3

We kunnen ook de VBA Split-functie gebruiken om het aantal woorden in de string te tellen. Laten we input van de gebruiker nemen en het aantal woorden tellen.

Stap 1: Ga naar het tabblad van de ontwikkelaar en klik op Visual Basic om VB Editor te openen.

Stap 2: Klik op Sheet 3 in het projectvenster om het codevenster te openen.

Stap 3: Zodra het codevenster is geopend, geeft u een subfunctie aan om te beginnen met het schrijven van de code.

Code:

 Sub Sample2 () Einde Sub 

Stap 4: Declareer twee variabelen een als een string en een als een array-string.

Code:

 Sub Sample2 () Dim A als String Dim B () As String End Sub 

Stap 5: Neem invoer van de gebruiker en sla deze op in A met behulp van de invoervakfunctie.

Code:

 Sub Sample2 () Dim A als tekenreeks Dim B () als tekenreeks A = InputBox ("Voer een tekenreeks in", "Moet spaties bevatten") Einde Sub 

Stap 6: Gebruik de Split-functie en sla deze op in B.

Code:

 Sub Sample2 () Dim A als String Dim B () As String A = InputBox ("Voer een string in", "Moet spaties bevatten") B = Split (A) End Sub 

Stap 7: Gebruik een Msgbox-functie om het totale aantal woorden weer te geven.

Code:

 Sub Sample2 () Dim A als tekenreeks Dim B () als tekenreeks A = InputBox ("Voer een tekenreeks in", "Moet spaties bevatten") B = Split (A) MsgBox ("Totaal aantal woorden dat u hebt ingevoerd is:" & UBound ( B ()) + 1) Einde Sub 

Stap 8: Voer de code uit met de meegeleverde knop Uitvoeren. Nadat we de code hebben uitgevoerd, wordt om een ​​invoer voor de tekenreeks gevraagd. Schrijf "INDIA IS MIJN LAND" in het vak en druk op ok om het resultaat te zien.

Verklaring van Excel VBA Split-functie

Nu weten we dat de splitfunctie in VBA een substringfunctie is die wordt gebruikt om tekenreeksen in verschillende delen te splitsen. De invoer die we nemen is als een string, terwijl de weergegeven uitvoer een array is.

Het lijkt erg op de andere werkbladfunctie, maar is superieur omdat het meerdere woorden kan breken en ze als een array kan retourneren.

Dingen om te onthouden

Er zijn een paar dingen die we moeten onthouden over de VBA-splitsfunctie:

  • De VBA-splitsfunctie is een substringfunctie.
  • Het retourneert uitvoer als een tekenreeks.
  • Alleen de uitdrukking is het verplichte argument, terwijl de rest van de argumenten optioneel zijn.

Aanbevolen artikelen

Dit is een gids geweest voor de VBA Split-functie. Hier hebben we besproken hoe u Excel VBA Split-functie kunt gebruiken, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. VBA While Loop maken
  2. Hoe cel splitsen in Excel?
  3. VBA Do While Loop met voorbeelden
  4. Een overzicht van Excel samenvoegen en centreren

Categorie: