VBA substringas - Kaip išgauti substringas naudojant VBA funkcijas?

„Excel VBA SubString“

„SubString“ yra eilutės arba jos dalies dalis, arba eilutės simbolis vadinamas „SubString“. VBA LEFT, RIGHT ir MID yra trijų tipų eilės funkcijos, kurios yra panašios į „Excel“ darbalapio pakraščius.

Stygos yra ne kas kita, kaip simbolių serija, o simboliai gali būti abėcėlės, skaičiai, specialieji simboliai ir visa tai apjungti.

Dažnai „Excel“ metu dirbdami su duomenimis, kurie yra eilutė, turime gauti tik eilutės dalį, kad palengvintume savo tikslą. Galbūt mums nereikia naudoti visos eilutės, tačiau mums reikia tik tos eilutės dalies. Pvz., Jei turite pavadinimą „Sachin Tendulkar“, jums gali prireikti tik pirmosios pavadinimo dalies, ty tik „Sachin“. Tai vadinama „SubString“ eilute „Excel VBA“. Norėdami susidoroti su šiomis eilutėmis, mes turime integruotas funkcijas pagal TEXT funkciją „Excel“ kategorijoje.

Šiame straipsnyje aptarsime, kaip gauti substratą iš visos eilutės VBA.

Kaip naudoti „SubString“ funkcijas VBA?

Norėdami išskleisti poskyrį iš eilutės, turime keletą integruotų teksto funkcijų, o kai kurios svarbios funkcijos yra „LEFT“, „RIGHT“, „INSTR“ ir „MID in excel“. Funkcija Instr bus kaip palaikomoji funkcija kitoms trims funkcijoms.

Mes pamatysime, kaip naudoti šias funkcijas, norint praktiškai išgauti pakraščius. Perskaitykite toliau pateiktus pavyzdžius, kad juos suprastumėte.

1 pavyzdys - kairiosios funkcijos naudojimas

Jei turite visą vardą kaip „Sachin Tendulkar“ ir jums reikia išskleisti tik pirmąjį vardą kaip poskyrį, naudokite šį kodą, kad gautumėte tą patį.

1 veiksmas: sukurkite makrokomandos pavadinimą ir apibrėžkite du kintamuosius kaip eilutę.

Kodas:

Sub Subtringo_pavyzdys1 () Uždenkite „FullName“ kaip eilutę „Dim FirstName“ kaip eilutės pabaigos antrinis

2 žingsnis: Dabar priskirkite kintamajam „ FullName “ pavadinimą „Sachin Tendulkar“ .

Kodas:

Sub Subtras_pavyzdys1 () Dim FullName kaip eilutė Dim FirstName As eilutė FullName = "Sachin Tendulkar" Pabaiga Sub

3 žingsnis: Dabar kintamasis „ FullName“ turi „Sachin Tendulkar“ vertę. Dabar turime išgauti „Excel“ VBA pakaitinį vardą iš viso vardo. Taigi, priskirkite kintamojo „ FirstName“ vertę naudodamiesi funkcija LEFT.

Kodas:

Sub SubString_Example1 () Dim FullName As String Dim FirstName As String FullName = "Sachin Tendulkar" FirstName = Left (End Sub

4 žingsnis: VBA LEFT funkcijos pirmasis argumentas yra eilutė; kad yra tai, kas yra pilna vertė arba visą eilutę. Šiame pavyzdyje visa mūsų reikšmė arba eilutė yra „Sachin Tendulkar“, priskiriama kintamajam „ FullName“.

Taigi pateikite argumentą „ FullName“ kintamasis .

Kodas:

Sub SubString_Example1 () Dim FullName as String Dim FirstName As String FullName = "Sachin Tendulkar" FirstName = Left End Sub

5 žingsnis: Kitas argumentas yra tai, kiek simbolių mums reikia iš pateiktos eilutės, taigi šiuo atveju mums visiškai reikia vardo „ Sachin “, mums reikia 6 simbolių iš kairės pusės.

Kodas:

Sub Subtring_Example1 () Dim DimName kaip eilutė Dim FirstName As eilutė FullName = "Sachin Tendulkar" FirstName = kairė (FullName, 6) Pabaiga Sub

6 žingsnis: Dabar parodykite rezultatą VBA pranešimų laukelyje.

Kodas:

Sub Subtring_Example1 () Dim FullName as String Dim FirstName as String FullName = "Sachin Tendulkar" FirstName = Left (FullName, 6) MsgBox FirstName End Sub

7 veiksmas: vykdykite makrokomandą, pamatykite vardą kaip poskyrį pranešimo laukelyje.

2 pavyzdys - gaukite „SubString“ iš dešinės

Kaip ir tai, kaip panašiai ištraukėme substratą iš kairės, galime išgauti ir iš dešinės. Paimkite tą patį pavadinimą kaip pavyzdį.

1 veiksmas: apibrėžkite du kintamuosius kaip eilutę.

Kodas:

Sub Subtringas_pavyzdys2 () Dim FullName kaip eilutė Dim LastName kaip eilutė End Sub

2 žingsnis: Kaip įprasta, priskirkite kintamojo „ FullName vertę kaip „Sachin Tendulkar“.

Kodas:

Sub Subtras_pavyzdys2 () Dim FullName kaip eilutė Dim LastName kaip eilutė FullName = "Sachin Tendulkar" Pabaiga Sub

3 žingsnis: Dabar kintamajam „ LastName“ priskirkite vertę naudodami „RIGHT excel“ funkciją.

Kodas:

Sub Subtras_pavyzdys2 () Dim FullName kaip eilutė Dim LastName As eilutė FullName = "Sachin Tendulkar" LastName = Dešinė (End Sub

4 žingsnis: eilutė yra mūsų „ FullName“, todėl pateikite kintamąjį.

Kodas:

Sub Subtrinkto_pavyzdys2 () Dim FullName kaip eilutė Dim LastName kaip eilutė FullName = "Sachin Tendulkar" LastName = Right (FullName, End Sub

5 žingsnis: ilgis nurodo, kiek simbolių mums reikia iš dešinės pusės. Dešinėje pusėje mums reikia 9 simbolių .

Kodas:

Sub Subtras_pavyzdys2 () Dim FullName kaip eilutė Dim LastName As eilutė FullName = "Sachin Tendulkar" LastName = Dešinė (FullName, 9) Pabaiga Sub

6 veiksmas: parodykite šią vertę pranešimo laukelyje .

Kodas:

Sub SubString_Example2 () Dim FullName as String Dim LastName As String FullName = "Sachin Tendulkar" LastName = Right (FullName, 9) MsgBox LastName End Sub

7 veiksmas: paleiskite makrokomandą. Mes pamatysime pavardę pranešimo laukelyje.

3 pavyzdys - Instr funkcijos naudojimas

In the above examples, we had only one name, and we have directly supplied how many characters we need from the left & right. But in the case of many names, first name & last name characters are not the same, it will differ from name to name. In those cases, we cannot supply the number of characters directly so we can use the function Instr.

Instr function will return the supplied character position in the string. For example, look at the below code.

Code:

Sub SubString_Example3() Dim Position As String Position = InStr(1, "Sachin", "a") MsgBox Position End Sub

InStr(1, “Sachin,” “a”), this will identify the position of the letter “a” as the first appearance in the string “Sachin.” In this case letter, “a” is in the second position. So we will get 2 as a result in the message box.

Like this, we can use the Instr function to find the space character between the first name and last name.

For example, look at the below name I have in the excel sheet.

Using LEFT, RIGHT, and Instr function, we can extract the substrings. Below is the code to extract the First Name.

Code:

Sub FirstName () Dim K As Long Dim LR As Long LR = ląstelės (eilutės. Skaičius, 1). Pabaiga (xIUp). K = 2 eilutė - LR ląstelės (K, 2). Vertė = kairė (langeliai (K, 1) .Vertė, InStr (1, langeliai (K, 1) .Vertė, "") - 1) Kitas K pabaigos antrinis

Paleiskite makrokomandą ir pamatykite vardą kaip poskyrį pranešimo laukelyje.

Naudokite žemiau pateiktą kodą, jei norite išskleisti pavardę kaip pakraštį.

Kodas:

Sub pavardė () Dim K As Long Dim LR As Long LR = ląstelės (eilutės. Skaičius, 1). Pabaiga (xIUp). K = 2 eilutė - LR ląstelės (K, 3). Reikšmė = dešinė (langeliai (K, 1) .Vertė, Len (Cells (K, 1)) - InStr (1, Cells (K, 1) .Value, "")) Kitas K End Sub

Paleiskite makrokomandą ir mes pamatysime pavardę pranešimo laukelyje.

Priskyriau makrokomandą darbalapiui, atsisiųsdavau darbaknygę ir jomis naudodavausi.

Įdomios straipsniai...