VBA MID funkcija - Kaip naudotis „Excel VBA MID“ funkcija?

„Excel VBA MID“ funkcija

VBA MID funkcija ištraukia reikšmes iš pateikto sakinio ar žodžio vidurio. MID funkcija yra suskirstyta į eilutę ir teksto funkciją ir tai yra darbalapio funkcija, kuri reiškia naudoti šią funkciją VBA, turime naudoti metodą application.worksheet.

Yra situacijų, kai norime išgauti vardą, pavardę ar antrąjį vardą. Tokiose situacijose TEXT kategorijos formulės yra naudingos mūsų reikalavimams patenkinti. Šios funkcijos naudojimas yra tas pats, kaip ir darbalapio nuorodos, ir sintaksė taip pat yra ta pati.

Sintaksė

Kaip ir mūsų „Excel“ MID funkcija, taip pat ir VBA, ji turi panašų sintaksės verčių rinkinį. Žemiau yra sintaksė.

  • String to Search: Tai ne kas kitas, o koks yra eilutės sakinys, ty iš kurios eilutės ar žodžio norėtumėte išgauti reikšmes.
  • Pradinė padėtis: iš kurios sakinio pozicijos norite ištraukti. Tai turėtų būti skaitinė vertė.
  • Ištraukiamų simbolių skaičius: kiek simbolių norite išgauti iš pradinės padėties? Tai taip pat turėtų būti skaitinė vertė.

Kaip naudotis VBA MID funkcija?

1 pavyzdys

Tarkime, kad turite žodį „Labas rytas“ ir norite iš šio sakinio ištraukti „Geras“. Norėdami išgauti vertę, atlikite toliau nurodytus veiksmus.

1 veiksmas: pirmiausia sukurkite makrokomandos pavadinimą.

Kodas:

Sub MID_VBA_Pavyzdys1 () Pabaiga Sub

2 veiksmas: paskelbkite kintamąjį kaip „STRING“.

Kodas:

Sub MID_VBA_Pavyzdys1 () Dim MiddleValue As String End Sub

3 žingsnis: Dabar priskirkite šio kintamojo vertę naudodami funkciją MID.

Kodas:

Sub MID_VBA_Pavyzdys1 () Dim Vidutinė vertė kaip eilutė Vidutinė vertė = Vidurys (Pabaiga Sub

4 žingsnis: Pirmasis argumentas yra eilutė, ty iš kurios vertės mes norime išgauti. Taigi mūsų vertė yra „Labas rytas“.

Kodas:

Sub MID_VBA_Example1 () Dim MiddleValue as String MiddleValue = Mid ("Labas rytas", pabaiga Sub

5 žingsnis: Toliau yra pradinė simbolio, kurį norite išgauti, padėtis. Šiuo atveju „Labas rytas“ prasideda nuo 7 -ojo simbolio.

Pastaba: tarpas taip pat yra simbolis.

Kodas:

Sub MID_VBA_Example1 () Dim MiddleValue as String MiddleValue = Mid ("Labas rytas", 7 pabaigos pusė

6 žingsnis: ilgis yra ne kas kitas, o kiek simbolių norite išgauti. Čia turime išgauti 4 simbolius, nes žodis „Geras“ yra 4 simboliai.

Kodas:

Sub MID_VBA_Example1 () Vidutinis vidurkis kaip eilutė MiddleValue = Vidutinis ("Labas rytas", 7, 4) Pabaiga

7 žingsnis: Mes užpildėme formulę. Parodykime kintamojo rezultatą pranešimo laukelyje.

Kodas:

Sub MID_VBA_Pavyzdys1 () Vidutinis vidurkis kaip eilutė Vidutinė vertė = Vidutinė („Labas rytas“, 7, 4) „MsgBox MiddleValue“ Pabaiga Sub

8 žingsnis: Dabar paleiskite šį kodą rankiniu būdu arba paspauskite klavišą F5, pranešimo laukelyje turėtų būti žodis „Geras“.

Išvestis:

2 pavyzdys

Tarkime, kad turite kartu vardą ir pavardę, o žodis yra „Ramesh, Tendulkar“. Tarp vardo ir pavardės atskyrimo simbolis yra kablelis (,). Dabar turime išgauti tik vardą.

1 veiksmas: sukurkite makrokomandą ir apibrėžkite kintamąjį.

Kodas:

Sub MID_VBA_Example2 () Dim FirstName as String End Sub

2 žingsnis: Dabar priskirkite šio kintamojo vertę naudodami funkciją MID.

Kodas:

Sub MID_VBA_Example2 () Dim DimName as String FirstName = Mid (End Sub

3 žingsnis: Mūsų eilutė yra „Ramesh.Tendulkar“, todėl įveskite šį žodį.

Kodas:

Sub MID_VBA_Example2 () Dim FirstName as String FirstName = Mid („Ramesh, Tendulkar“, End Sub

4 žingsnis: Kadangi mes išgauname vardą, pradinė pozicija yra 1.

Kodas:

Sub MID_VBA_Example2 () Dim FirstName As String FirstName = Mid (Mid ("Ramesh, Tendulkar", 1, End Sub)

5 žingsnis: Simbolio ilgis, kurį galite tiesiogiai įvesti kaip 6, bet tai nėra geriausias būdas. Norėdami nustatyti ilgį, pritaikykime dar vieną formulę, vadinamą Instr.

Kodas:

Sub MID_VBA_Example2 () Dim FirstName as String FirstName = Mid („Ramesh, Tendulkar“, 1, InStr (End Sub)

6 žingsnis: Ši pradinė padėtis yra 1.

Kodas:

Sub MID_VBA_Example2 () Dim FirstName as String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (1, End Sub)

7 veiksmas: 1 eilutė yra mūsų vardas, ty „Ramesh, Tendulkar“.

Kodas:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar",1,InStr(1,"Ramesh,Tendulkar", End Sub

Step 8: String 2 what is the separator of first name & last name, i.e., comma (,).

Code:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar",1,InStr(1,"Ramesh,Tendulkar",",") End Sub

Note: Instr function will return how many characters are there in the word “Ramesh, Tendulkar” from the string 1 position to the string 2 positions, i.e., until comma (,). So Instr will return 7 as a result, including comma (,).

Step 9: Since Instr function returns no., of characters including comma (,) we need to minus 1 character here. So enter -1 after the close of Instr function.

Code:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar", 1, InStr(1, "Ramesh,Tendulkar", ",") - 1) End Sub

Step 10: Now show the value of the variable in the message box.

Code:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar", 1, InStr(1, "Ramesh,Tendulkar", ",") - 1) MsgBox FirstName End Sub

Step 11: Run this code using the F5 key, or you can run this code manually. We would get the first name in the message box.

Output:

Example #3

Now I will give you one assignment to solve. I have a list of First Name & Last Name.

From this list, I want you to extract the first name only. All the best!!!!.

Ok, If you have tried and not able to get the result, then the below code would help you in this.

Code:

Sub MID_VBA_Pavyzdys3 () „Dim Dim As Long For i“ = nuo 2 iki 15 langelių (i, 2). Vertė = vidurinė (ląstelės (i, 1). Vertė, 1, InStr (1, ląstelės (i, 1). Vertė, " , ") - 1) Kitas i End Sub

Nukopijuokite ir įklijuokite aukščiau nurodytą kodą į savo modulį. Nukopijavę kodą, paleiskite šį kodą naudodami klavišą F5, arba galite paleisti rankiniu būdu.

Tai turėtų duoti tokį rezultatą, koks yra žemiau.

Ką reikia atsiminti

  • Funkcijos MID ilgio argumentas yra neprivalomas. Jei to nepaisysite, numatytoji reikšmė bus 1.
  • Norėdami nustatyti ilgį arba pradinę padėtį, naudokite „Instr“ funkciją kartu su „MID“ funkcija.

Įdomios straipsniai...