Substring är en av de mest populära funktionerna i alla programmeringsspråk. Den underlättar dina uppgifter när du hanterar strängar. Som namnet antyder delar en substring-funktion upp en sträng i olika delar baserat på särskilda kriterier.
Det finns flera VBA Substring-funktioner. I praktiska situationer kan dessa substring-funktioner vara ganska användbara för att extrahera en del av en sträng.
I dag i det här inlägget kommer jag att förklara alla VBA substring-funktioner som du kan använda i Excel-makron:
Innehållsförteckning
- LEFT Substring-funktion:
- Exempel:
- Höger funktion för delsträng:
- Exempel:
- MID Substring-funktionen:
- Exempel:
- SPLIT Substring-funktionen:
- Exempel: Split ("Detta är en textsträng", " ") Resultatet av denna splitfunktion är en array av ord: ”Det här” ”är” ”en” ”text” ”sträng”. Rekommenderad läsning: VBA Split Function VBA Substring Macro Example: VBA Substring Macro Example: Nedan har jag skapat ett makro som illustrerar alla de tekniker för delsträngar som finns tillgängliga i VBA-programmering. Detta är ett enkelt och självförklarande makro, i detta har jag helt enkelt delat upp en textsträng med de 4 metoder som jag har beskrivit ovan. Nedan följer den kod som jag har använt för detta makro: Sub BreakStrings()'Left functiona = Left("Excel Trick Text", 5)'Right functionb = Right("Excel Trick Text", 11)'Mid functionc = Mid("Excel Trick Text", 1, 11)'Split-funktiond = Split("Excel Trick Text", " ")For Each wrd In dstrg = strg & wrd & ", "Next'Visar resultaten i en meddelandefältMsgBox "Left: " & a & vbNewLine & "Right: " & b & vbNewLine & "Mid: " & c & vbNewLine & "Split: " & strgEnd Sub Det här handlade alltså om VBA-funktioner för delsträngar. Dela gärna med dig av din syn på ämnet.
LEFT Substring-funktion:
Funktionen LEFT i Excel VBA används för att hämta ett visst antal tecken från strängens början. Syntaxen för LEFT-funktionen är följande:
Left (text_string, length)
- Här hänvisar ”text_string” till en inmatningssträng som ska separeras.
- Och ”length” hänvisar till antalet tecken som ska hämtas.
Exempel:
Vänster ("Exceltrick", 5) 'ger ett resultat "Excel"
Vänster ("SomeText", 4) 'ger resultatet "Some"
Notera: Istället för att använda en hårdkodad sträng i det första argumentet kan du också hämta ”text_string” från ditt Excel-ark, till exempel ActiveSheet.Range(”A1”).
Höger funktion för delsträng:
Den högra funktionen i Excel VBA är raka motsatsen till den vänstra funktionen. Den returnerar ett angivet antal tecken från slutet av textsträngen. Syntaxen för funktionen RIGHT är följande:
Right (text_string, length)
- Här hänvisar ”text_string” till en inmatningssträng som ska separeras.
- Och ”length” hänvisar till antalet tecken som ska extraheras, men extraheringen börjar från den högra sidan.
Exempel:
Högre ("Exceltrick", 5) 'ger ett resultat "trick"
Högre ("SomeText", 4) 'ger resultatet "Text"
Notera: Istället för att använda en hårdkodad sträng i det första argumentet kan du också hämta ”text_string” från ditt Excel-ark som ActiveSheet.Range(”A1”).
MID Substring-funktionen:
MID är en mycket bättre funktion än de två första, den ger dig möjlighet att ange start- och slutpositionen för den extraherade strängen. Syntaxen för MID VBA Substring-funktionen är följande:
Mid(text_string, start_position, Length)
- Här hänvisar ”text_string” till en inmatningssträng som ska separeras.
- ’start_position’ hänvisar till den numeriska position från vilken extraktionen ska påbörjas.
- Och ’length’ hänvisar till antalet tecken som ska extraheras.
Exempel:
MID ("Exceltrick", 2,4) 'ger resultatet "celt"
MID ("SomeText", 4,4) 'ger resultatet "Text"
Notera: Istället för att använda en hårdkodad sträng i det första argumentet kan du också hämta ”text_string” från ditt Excel-ark som ActiveSheet.Range(”A1”).
SPLIT Substring-funktionen:
Funktionen SPLIT är en annan VBA-funktion som kan användas för att dela upp eller dela upp en sträng. Funktionen SPLIT kan vara mycket praktisk när du delar upp en textsträng i flera delar baserat på en avgränsare. Syntaxen för en split-funktion är följande:
Split (text_string, Delimiter, limit, Compare)
- Här hänvisar ”text_string” till en inmatningssträng som ska separeras.
- ”Delimiter” hänvisar till det avgränsningstecken som separerar strängen i delar. Detta är ett valfritt argument, om det lämnas tomt antas mellanslagstecknet ” ” vara standardavgränsare.
- ’limit’ avser det maximala antalet delar av delsträngar som strängen ska delas upp i. Det är också ett valfritt argument, standardvärdet är (-1) vilket innebär att delsträng ska ske vid varje position där avgränsaren påträffas.
- ’compare’ är ett valfritt numeriskt värde som anger vilken jämförelse som ska användas vid utvärdering av delsträngar.
Exempel:
Split ("Detta är en textsträng", " ")
Resultatet av denna splitfunktion är en array av ord: ”Det här” ”är” ”en” ”text” ”sträng”.
Rekommenderad läsning: VBA Split Function
VBA Substring Macro Example: VBA Substring Macro Example:
Nedan har jag skapat ett makro som illustrerar alla de tekniker för delsträngar som finns tillgängliga i VBA-programmering. Detta är ett enkelt och självförklarande makro, i detta har jag helt enkelt delat upp en textsträng med de 4 metoder som jag har beskrivit ovan.
Nedan följer den kod som jag har använt för detta makro:
Sub BreakStrings()
'Left function
a = Left("Excel Trick Text", 5)
'Right function
b = Right("Excel Trick Text", 11)
'Mid function
c = Mid("Excel Trick Text", 1, 11)
'Split-funktion
d = Split("Excel Trick Text", " ")
For Each wrd In d
strg = strg & wrd & ", "
Next
'Visar resultaten i en meddelandefält
MsgBox "Left: " & a & vbNewLine & "Right: " & b & vbNewLine & "Mid: " & c & vbNewLine & "Split: " & strg
End Sub
Det här handlade alltså om VBA-funktioner för delsträngar. Dela gärna med dig av din syn på ämnet.
Split ("Detta är en textsträng", " ")
Resultatet av denna splitfunktion är en array av ord: ”Det här” ”är” ”en” ”text” ”sträng”.
Rekommenderad läsning: VBA Split Function
VBA Substring Macro Example: VBA Substring Macro Example:
Nedan har jag skapat ett makro som illustrerar alla de tekniker för delsträngar som finns tillgängliga i VBA-programmering. Detta är ett enkelt och självförklarande makro, i detta har jag helt enkelt delat upp en textsträng med de 4 metoder som jag har beskrivit ovan.
Nedan följer den kod som jag har använt för detta makro:
Sub BreakStrings()
'Left function
a = Left("Excel Trick Text", 5)
'Right function
b = Right("Excel Trick Text", 11)
'Mid function
c = Mid("Excel Trick Text", 1, 11)
'Split-funktion
d = Split("Excel Trick Text", " ")
For Each wrd In d
strg = strg & wrd & ", "
Next
'Visar resultaten i en meddelandefält
MsgBox "Left: " & a & vbNewLine & "Right: " & b & vbNewLine & "Mid: " & c & vbNewLine & "Split: " & strg
End Sub
Det här handlade alltså om VBA-funktioner för delsträngar. Dela gärna med dig av din syn på ämnet.