Sisukord
Üks kõige tähtsamaid ja laialdaselt kasutatavaid funktsioone, mida me kasutame töötades koos VBA Excelis on Keskmine funktsioon aadressilt VBA See võtab sisendiks stringi ja tagastab väljundina antud arvu tähemärke stringi keskelt. Täna selles artiklis näitan teile, kuidas saate kasutada funktsiooni Keskmine funktsioon aadressilt VBA nõuetekohaste näidete ja illustratsioonidega.
See tagastab 9 tähemärgid stringist "Angela Catherine Nevills" , alustades 8. iseloomu. See on "Catherine" .
Lae alla praktiline töövihik
Lae alla see harjutusvihik, et harjutada ülesannet selle artikli lugemise ajal.
VBA Keskmine funktsioon.xlsmSissejuhatus Exceli VBA keskmiste funktsioonide kohta
⧭ Funktsiooni eesmärk:
The Mid funktsioon võtab sisendiks väärtuse ja tagastab väljundina antud arvu sümboleid, mis algavad väärtuse antud positsioonist.
Väärtus võib olla string, number , või isegi boolean .
Näiteks kui sisestate Mid("Angela Catherine Nevills",8,9), see naaseb "Catherine" .
Kui sisestate Mid(12345,2,3) , saate 234.
Ja sisestage Mid(False,2,3) , saate als .
⧭ Süntaks:
Süntaks Keskmine funktsioon aadressilt VBA on:
=Mid(String,Start as Long,[Length])
⧭ Argumendid:
Argument | Kohustuslik / vabatahtlik | Selgitus |
---|---|---|
String | Nõutav | String, millest tagastatakse tähemärkide arv. |
Start | Nõutav | Tagastatava stringi algustäht. |
Pikkus | Valikuline | Tagastatavate tähemärkide arv. Vaikimisi on 1. |
⧭ Tagastamisväärtus:
Tagastab antud arvu tähemärke stringi keskelt, alustades antud positsioonist.
3 näidet Exceli VBA funktsiooni Mid kohta
Seekord uurime Keskmine funktsioon aadressilt VBA üksikasjalikult koos mõne näitega.
1. Antud tähemärkide arvu eraldamine mõnede ID-de keskelt, kasutades Exceli VBA funktsiooni Mid funktsiooni
Siin on meil andmekogum koos ID-d ja Nimed mõne Saturn Groupi nimelise ettevõtte töötajatest.
Siin on Neljas aadressile 7. iga ID tähemärk tähistab vastava töötaja liitumisaastat.
Nüüd töötame välja Kasutaja määratud funktsioon kasutades Keskmine funktsioon aadressilt VBA mis ekstraheerib iga töötaja liitumisaasta välja Töötaja ID .
Saate kasutada järgmist VBA kood:
⧭ VBA kood:
Function Joining_Year(ID) Joining_Year = Mid(ID, 4, 4) End Function
Märkus: See kood loob funktsiooni nimega Liitumise_aastat .
⧭ Väljund:
Käivitage see funktsioon oma töölehe mis tahes lahtris, mille argumendiks on ID.
Siin, lahtris D4 , oleme sisestanud valemi:
=Joining_Year(B4)
See on tagastanud esimese töötaja liitumisaasta, 2021 .
Nüüd saate lohistada Täitmise käepide saada ülejäänud töötajate liitumisaastad.
⧭ Koodeksi selgitus:
- Kõigepealt deklareerime funktsiooni nimega Liitumise_aastat mis võtab sisendiks ID reaga Funktsioon Joining_Year(ID) .
- Siis me ekstraheerime 4 tähemärgid ID-st alates positsioonist 4 , joonel Joining_Year = Mid(ID, 4, 4, 4) .
- Liin Lõppfunktsioon deklareerib funktsiooni lõppu.
2. Laiendite väljavõtmine mõnest e-posti aadressist, kasutades Exceli VBA funktsiooni "Mid".
Nüüd lisasime andmekogumile uue veeru, mis sisaldab töötajate e-posti aadressi.
Seekord võtame välja e-posti aadresside laiendused, kasutades funktsiooni Mid funktsioon VBA .
The VBA kood on:
⧭ VBA kood:
Function Extension(Email_aadress) For i = 1 To Len(Email_aadress) If Mid(Email_aadress, i, 1) = "@" Then Extension = Mid(Email_aadress, i + 1, Len(Email_aadress) - (i + 4)) End If Next i End Function
Märkus: See kood loob funktsiooni nimega Pikendus .
⧭ Väljund:
Käivitage see funktsioon oma töölehe mis tahes lahtris, mille puhul on märgitud E-posti aadress argumendiks.
Siin, lahtris E4 , oleme sisestanud valemi:
=Extension(D4)
See on tagastanud esimese e-posti aadressi laienduse.
Seejärel saate lohistada Täitmise käepide kõigi e-posti aadresside laienduste väljavõtmiseks.
⧭ Koodeksi selgitus
- Kõigepealt deklareerime funktsiooni nimega Pikendus mis võtab sisendiks mis tahes nime rea poolt Funktsioon Extension(E-posti aadress) .
- Seejärel alustame iteratsiooni koos for-loop mis kontrollib iga tähemärki E-posti aadress et näha, kas see on @ või ei ole liinil If Mid(Email_aadress, i, 1) = "@" Then .
- Kui ta leiab @ , siis ekstraheerib ta vajaliku laienduse välja E-posti aadress liinil Extension = Mid(Email_Address, i + 1, Len(Email_Address) - (i + 4)) .
- Lõpuks deklareerime funktsiooni lõpu.
3. Mõnede tekstide kontrollimine, et näha, kas nad sisaldavad konkreetset teksti või mitte
Üks olulisemaid kasutusviise on Keskmine funktsioon on näha, kas tekst sisaldab konkreetset teksti või mitte.
Töötame välja funktsiooni, mis kontrollib, kas E-posti aadressid sisaldavad terminit "gmail" või mitte.
Saate kasutada järgmist VBA kood:
⧭ VBA kood:
Function Checking(Text1, Text2) For i = 1 To Len(Text1) If Mid(Text1, i, Len(Text2)) = Text2 Then Checking = "Yes" Exit For Else Checking = "No" End If Next i End Function
Märkus: See kood loob funktsiooni nimega Kontrollimine .
⧭ Väljund:
Käivitage see funktsioon oma töölehe mis tahes lahtris, mille argumendiks on kaks teksti.
Siin, lahtris E4 , oleme sisestanud valemi:
=Checking(D4, "gmail")
See on naasnud jah sest 1. e-posti aadress on Gmail aadress.
Seejärel saate lohistada Täitmise käepide teha sama kõigi e-posti tunnuste puhul.
⧭ Koodeksi selgitus:
- Kõigepealt deklareerime funktsiooni nimega Kontrollimine mis võtab argumendiks kaks teksti reaga Funktsioon Kontroll(Tekst1,Tekst2) .
- Seejärel käivitame for tsükli, mis kontrollib iga segmenti Tekst1 alustades positsioonist 1 , et näha, kas see on võrdne Tekst2 või mitte, joonega Kui Mid(Tekst1, i, Len(Tekst2)) = Tekst2 Siis .
- Kui see leiab Tekst2 , siis tagastab see "Jah" , vastasel juhul tagastab see "Ei" .
- Lõpuks lõpetame funktsiooni joonega Lõppfunktsioon .
Asjad, mida meeles pidada
- The 1. argument Keskmine funktsioon ei pea alati olema string. See võib olla ka string , a number , või isegi boolean väärtus.
- Kuid 2. ja Kolmas argumendid peavad olema numbrid Nad võivad olla täisarvud või fraktsioonid kuid peab olema numbrid Kui nad on fraktsioonid , siis on Keskmine funktsioon konverteerib need lähimasse täisarvud .