Excel VBA SubString
Excel VBA SubString este un tip de funcție foarte utilă în VBA care este utilizată pentru a tăia și a tăia date sub formă de șir de caractere. Dar în funcțiile din foaia de lucru, avem trei funcții de subșir, care sunt funcțiile Left-right și mid, în timp ce în VBA avem funcțiile Left-right mid și split ca funcții de subșir. După cum sugerează și numele, funcția substring din VBA împarte un șir de caractere în mai multe subșiruri. De asemenea, după cum s-a explicat mai sus, în VBA există mai multe funcții VBA Substring. În acest articol, vom învăța cum să folosim aceste funcții substring separat, cu exemple. Înainte de a trece mai departe cu exemplele, mai întâi să învățăm sintaxa acestor funcții și ce argument acceptă aceste funcții ca intrare.
Sintaxa Excel VBA SubString
În cele ce urmează sunt diferite sintaxe:
Vezi cursurile și videoclipurile noastre demonstrative
Valoare, Hadoop, Excel, aplicații mobile, dezvoltare web & multe altele.
Sintaxa funcției Left SubString:
Stringul text este șirul pe care îl furnizăm ca intrare, în timp ce lungimea este numărul de caractere pe care îl dorim din șirul de intrare.
Exemplu: Dacă avem un șir de caractere ca ANAND și dorim ca AN să fie subșir, codul va fi
Left („ANAND”,2)
Sintaxa funcției Right SubString:
Stringul text este șirul pe care îl furnizăm ca intrare, în timp ce lungimea este numărul de caractere pe care îl dorim din șirul de intrare.
Exemplu: Dacă avem un șir de caractere ca ANAND și folosim același cod ca mai sus, rezultatul va fi
Dreapta („ANAND”,2)
Aceasta dă ca rezultat ND.
Sintaxa funcției Mid SubString în VBA:
Stringul text este șirul pe care îl furnizăm ca intrare, iar Poziția de început este poziția în care dorim să înceapă caracterul pentru extragere, în timp ce Lungimea este numărul de caractere pe care îl dorim din șirul de intrare.
Exemplu: Avem un șir de caractere ca COMPUTER și dorim să PUT ca subșir atunci codul va fi următorul:
MID („COMPUTER”,4,3)
Sintaxa funcției Split SubString:
- Expression As String: Acesta este un argument obligatoriu în funcția SPLIT. Este practic șirul de intrare pe care îl furnizăm.
- Delimitator: Acesta este un argument opțional. Este delimitatorul specific care împarte șirul, dar, în mod implicit, spațiul este considerat ca fiind delimitatorul implicit.
- Limit: Acesta este, de asemenea, un argument opțional. Limit înseamnă numărul maxim de părți pe care dorim să le facem dintr-un șir de caractere. Dar, din nou, dacă nu furnizăm o limită funcției, VBA o tratează ca fiind implicit -1. Aceasta concluzionează că șirul va fi despărțit de fiecare dată când există un delimitator în șir.
- Compare: Acest argument final este, de asemenea, un argument opțional. Compare este o metodă de comparare care este una dintre cele două de mai jos:
- Fie este 0, ceea ce înseamnă că SPLIT va efectua o comparație binară, ceea ce înseamnă că fiecare caracter ar trebui să se potrivească cu el însuși.
- Sau poate fi 1, ceea ce înseamnă că funcția SPLIT va efectua o comparație textuală.
Funcția Split este cea mai complicată și cea mai utilă dintre toate funcțiile de subșiruri de mai sus. Toate celelalte trei funcții de subșiruri folosesc un singur șir de caractere ca intrare, în timp ce funcția Split folosește o matrice de șiruri.
De exemplu, dacă scriu Split(„I AM A GOOD BOY”) va împărți șirul ca separat (fiecare cuvânt ca fiind separat). Acum haideți să folosim aceste funcții de subșiruri în exemple.
Cum se utilizează funcțiile de subșiruri în VBA?
Vom învăța cum să folosim funcția SubString în Excel folosind codul VBA.
Exemplu #1
Funcția SubString stânga în VBA. Să folosim prima funcție substring în VBA. Pentru aceasta, urmați pașii de mai jos:
Pasul 1: Mergeți la fila dezvoltator și faceți clic pe Visual Basic pentru a deschide VB Editor.
Pasul 2: Introduceți un nou modul în interiorul Visual Basic Editor (VBE). Faceți clic pe fila Insert > selectați Module.
Etapa 3: Declarați o subfuncție pentru a începe să scrieți codul.
Code:
Sub Sample()End Sub
Pasul 4: Declarăm două șiruri de caractere unul pentru a prelua datele de intrare de la utilizator și altul pentru a stoca valoarea rezultatului.
Cod:
Sub Sample()Dim A, B As StringEnd Sub
Etapa 5: Preia datele de intrare de la utilizator pentru șirul de intrare folosind funcția input box.
Cod:
Sub Sample()Dim A, B As StringA = InputBox("Enter a String", "Single String")End Sub
Etapa 6: În variabila B se stochează valoarea din funcția din stânga până la locul trei.
Cod:
Sub Sample()Dim A, B As StringA = InputBox("Enter a String", "Single String")B = Left(A, 3)End Sub
Etapa 7: Utilizați funcția Msgbox pentru a afișa rezultatul final.
Cod:
Sub Sample()Dim A, B As StringA = InputBox("Enter a String", "Single String")B = Left(A, 3)MsgBox BEnd Sub
Etapa 8: Acum rulați codul de mai sus apăsând tasta F5. și Scrieți șirul de intrare ca ANAND.
Pasul 9: Când apăsăm OK, vedem rezultatul funcției de subșir din stânga.
ANA este cele trei caractere din stânga șirului.
Exemplu #2
Funcția de subșir din dreapta în VBA. Pentru aceasta, urmați pașii de mai jos:
Pasul 1: În același modul declarați o altă subfuncție pentru a începe să scrieți codul pentru funcția right substring.
Cod:
Sub Rightsub()End Sub
Pasul 2: Declarați două variabile A și B ca șir de caractere.
Cod:
Sub Rightsub()Dim A, B As StringEnd Sub
Etapa 3: Preia intrarea de la utilizator și stochează valoarea în variabila A.
Cod:
Sub Rightsub()Dim A, B As StringA = InputBox("Enter a String", "Single String")End Sub
Etapa 4: Folosiți funcția Right pe șirul de caractere până la locul trei și stocați valoarea în variabila B.
Cod:
Sub Rightsub()Dim A, B As StringA = InputBox("Enter a String", "Single String")B = Right(A, 3)End Sub
Etapa 5: Utilizați funcția Msgbox pentru a afișa valoarea lui B.
Cod:
Sub Rightsub()Dim A, B As StringA = InputBox("Enter a String", "Single String")B = Right(A, 3)MsgBox BEnd Sub
Etapa 6: Rulați codul și introduceți șirul de intrare ca fiind „MOTHER”.
Etapa 7: Apăsați OK pentru a vedea rezultatul.
MAMĂ reprezintă cele trei caractere din dreapta șirului.
Exemplu #3
Funcția Substringă MIE în VBA. Pentru aceasta, urmați pașii de mai jos:
Pasul 1: În același modul declarați o altă subfuncție pentru a începe să scrieți codul pentru funcția Mid.
Cod:
Sub MIDsub()End Sub
Pasul 2: Declarați două variabile A și B ca String.
Cod:
Sub MIDsub()Dim A, B As StringEnd Sub
Etapa 3: Preia datele de intrare de la utilizator și stochează valoarea în variabila A.
Cod:
Sub MIDsub()Dim A, B As StringA = InputBox("Enter a String", "Single String")End Sub
Etapa 4: Utilizați funcția Mid cu poziția inițială 4 și lungimea 3 stochează valoarea în B și o afișează folosind funcția Msgbox.
Cod:
Sub MIDsub()Dim A, B As StringA = InputBox("Enter a String", "Single String")B = Mid(A, 4, 3)MsgBox BEnd Sub
Etapa 5: Rulați codul de mai sus și dați COMPUTER ca intrare.
Etapa 6: Apăsați OK pentru a vedea rezultatul final.
Subșirul PUT începe de la poziția a 4-a și am reușit să extragem cu succes trei caractere.
Exemplu #4
Funcția VBA Split SubString. Pentru aceasta, urmați pașii de mai jos:
Pasul 1: În același modul, declarați o subfuncție pentru a începe să scrieți codul pentru subfuncție.
Cod:
Sub SplitSub()End Sub
Pasul 2: Declarați două variabile A ca șir de caractere și B ca matrice String și luați șirul de intrare de la utilizator și stocați-l în variabila A.
Cod:
Sub SplitSub()Dim A As StringDim B() As StringA = InputBox("Enter a String", "Separate with Commas")End Sub
Etapa 3: Utilizați funcția Split SubString și stocați valoarea sa în variabila B.
Cod:
Sub SplitSub()Dim A As StringDim B() As StringA = InputBox("Enter a String", "Separate with Commas")B = Split(A, ",")End Sub
Etapa 4: Utilizați bucla For pentru a afișa fiecare SubString într-o singură linie.
Cod:
Sub SplitSub()Dim A As StringDim B() As StringA = InputBox("Enter a String", "Separate with Commas")B = Split(A, ",")For i = LBound(B) To UBound(B)strg = strg & vbNewLine & "String Number " & i & " - " & B(i)Next iMsgBox strgEnd Sub
Pasul 5 Rulați codul de mai sus și dați I,AM,GOOD,BOY ca intrare.
Pasul 6: Apăsați OK pentru a vedea rezultatul.
Am folosit „,” ca delimitator în exemplul de mai sus.
Concluzie
Ca și funcțiile substring din foaia de calcul, VBA are de asemenea funcții substring. Acestea sunt funcțiile Left Right Mid și Split. Practic, funcțiile Substring împart un șir de caractere sau o matrice de șiruri în mai multe subșiruri. Dacă dorim un subșir din stânga șirului folosim funcția Left sau right în cazul opus. Dacă dorim un caracter din mijlocul unui anumit șir de caractere, folosim funcțiile MID. De asemenea, dacă avem un array de șiruri de caractere folosim funcțiile split.
Ce lucruri de reținut
Există câteva lucruri pe care trebuie să le reținem despre funcțiile Substring din VBA:
- Este similar cu funcțiile substring din foaia de calcul.
- Funcțiile Substring împart un șir dat în subșiruri.
- Dacă avem un array de șiruri folosim funcțiile split.
- Doar șirul de intrare în funcția split este obligatoriu, în timp ce celelalte sunt opționale.
Articole recomandate
Acesta este un ghid pentru VBA SubString. Aici discutăm despre modul de utilizare a funcției SubString în Excel VBA, împreună cu exemple practice și un șablon excel descărcabil. De asemenea, puteți parcurge și celelalte articole sugerate de noi –
- VBA SendKeys
- VBA On Error Goto
- VBA Input
- VBA LBound
.