VBA Left-functie - Hoe Excel VBA Left-functie te gebruiken?

Inhoudsopgave

Excel VBA links

VBA Left is ook een van de werkbladfuncties die zijn gecategoriseerd onder de tekstfuncties die in VBA met de applicatie worden gebruikt. werkbladmethode, retourneert het het opgegeven aantal tekens vanaf het linkerdeel van de tekenreeks.

Sommige van de Excel-functies zijn ook geïntegreerd met VBA. Van alle vele tekstfuncties is VBA LEFT een van die functies die we vrij vaak gebruiken dan andere formules.

Als u de Excel LEFT-functie kent, dan is de VBA LEFT-functie precies hetzelfde. Het kan de tekens extraheren vanaf de linkerkant van de string of waarde die door de gebruiker is opgegeven.

De syntaxis van de LEFT-functie is precies hetzelfde als in de werkbladfunctie.

Het heeft twee argumenten.

  • String: dit is niets anders dan de waarde of celverwijzing. Van deze waarde proberen we de karakters te hakken.
  • Lengte: hoeveel tekens u wilt extraheren uit de string die u heeft opgegeven. Dit moet een numerieke waarde zijn.

Hoe Excel VBA Left-functie te gebruiken?

Voorbeeld 1

Stel dat u het woord "Sachin Tendulkar" hebt en u wilt alleen de eerste 6 karakters van dit woord. We laten zien hoe je van links kunt extraheren met de LEFT-functie in VBA.

Stap 1: Maak een macronaam en definieer de variabele als String.

Code:

Sub Left_Example1 () Dim MyValue As String End Sub

Stap 2: Wijs nu een waarde toe aan deze variabele

Code:

Sub Left_Example1 () Dim MyValue As String MyValue = End Sub

Stap 3: Open de LEFT-functie.

Code:

Sub Left_Example1 () Dim MyValue As String MyValue = Left (End Sub

Stap 4: Het eerste argument is om te vertellen wat de string of waarde is. Onze waarde hier is "Sachin Tendulkar."

Code:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", End Sub

Stap 5: Lengte is niets anders dan het aantal tekens dat we van links nodig hebben. We hebben 6 karakters nodig.

Code:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) End Sub

Stap 6: Toon de waarde in de VBA MsgBox.

Code:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) MsgBox MyValue End Sub

Stap 7: Voer de macro uit met behulp van de F5-toets of handmatig via een run-optie om het resultaat in een berichtvenster te krijgen.

Uitgang:

In plaats van het resultaat in een berichtvenster te tonen, kunnen we dit resultaat opslaan in een van de cellen in ons Excel-werkblad. We hoeven alleen de celverwijzing en variabele waarde toe te voegen.

Code:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) Range ("A1"). Value = MyValue End Sub

Als u deze code nu uitvoert, krijgen we de waarde in cel A1.

Voorbeeld # 2 - LINKS met andere functies

In het bovenstaande geval hebben we de lengte van de karakters die we nodig hebben direct vanuit de linker richting opgegeven, maar dit is geschikter voor één of twee waarden. Stel dat hieronder de lijst met waarden is die u in uw Excel-blad hebt.

In each case, first name characters are different from one to another; we cannot directly specify the number of characters we needed from each name.

This is where the beauty of other functions will come into the picture. In order to supply the number of characters dynamically, we can use the “VBA Instr” function.

In the above set of names, we need all the characters from the left until we reach space character. So Instr function can return those many characters.

Step 1: Similarly, start an excel macro name and define a variable as a string.

Code:

Sub Left_Example2() Dim FirstName As String End Sub

Step 2: Assign the value to the variable through the LEFT function.

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left( End Sub

Step 3: Here, we need to refer the cell to get the value from the cells. So write the code as CELLE (2,1).Value.

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left(Cells(2,1).Value, End Sub

Step 4: The next thing is how many characters we need. After applying the LEFT function, don’t enter the length of the characters manually. Apply the Instr function.

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left(Cells(2, 1).Value, InStr(1, Cells(2, 1).Value, " ")) End Sub

Step 5: Store this result in the B2 cell. So the code is CELLS (2,2).value = FirstName

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left(Cells(2, 1).Value, InStr(1, Cells(2, 1).Value, " ")) Cells(2, 2).Value = FirstName End Sub

Stap 6: voer deze code handmatig uit, of via F5 krijgen we de voornaam.

We hebben de voornaam voor de ene naam, maar we hebben ook verschillende andere namen. We kunnen geen 100 regels code schrijven om te extraheren, hoe extraheren we dan?

Dit is waar de schoonheid van loops in beeld komt. Hieronder staat de luscode, die alle ongewenste stappen kan elimineren en de klus in 3 regels kan doen.

Code:

Sub Left_Example2 () Dim FirstName As String Dim i As Integer For i = 2 tot 9 FirstName = Left (Cells (i, 1) .Value, InStr (1, Cells (i, 1) .Value, "") - 1) Cellen (i, 2) .Value = Voornaam Volgende i End Sub
Opmerking: de functie Instr retourneert ook een spatie, dus we moeten 1 min van het Instr-resultaat.

Als u deze code uitvoert, krijgen we de voornaamwaarden.

Uitgang:

Dingen om te onthouden

  • Links kan alleen van links extraheren.
  • De VBA Instr-functie vindt de positie van het opgegeven teken in de tekenreeks.

Interessante artikelen...