Tabl cynnwys
Un o'r swyddogaethau pwysicaf a ddefnyddir yn helaeth wrth weithio gyda VBA yn Excel yw'r swyddogaeth Ganol o VBA . Mae'n cymryd llinyn fel y mewnbwn ac yn dychwelyd nifer penodol o nodau o ganol y llinyn fel allbwn. Heddiw yn yr erthygl hon, byddaf yn dangos i chi sut y gallwch chi ddefnyddio'r swyddogaeth Canolbarth o VBA gydag enghreifftiau a darluniau cywir.
Bydd hyn yn dychwelyd 9 nod o'r llinyn "Angela Catherine Nevills" , gan ddechrau o'r 8fed nod. “Catherine” ydyw.
Lawrlwythwch y Llyfr Gwaith Ymarfer
Lawrlwythwch y llyfr ymarfer hwn i ymarfer y dasg tra rydych chi'n darllen yr erthygl hon.
VBA Mid Function.xlsm
Cyflwyniad i Swyddogaeth Ganol VBA yn Excel
⧭ Amcan Swyddogaeth:
Mae ffwythiant Canol yn cymryd gwerth fel y mewnbwn a yn dychwelyd nifer penodol o nodau gan ddechrau o safle penodol o'r gwerth fel yr allbwn.
Gall y gwerth fod yn llinyn , rhif , neu hyd yn oed boolean .
Er enghraifft, os mewnosodwch Mid(“Angela Catherine Nevills”, 8,9), bydd yn dychwelyd “Catherine” .
Os rhowch Canolbarth(12345,2,3) , fe gewch 234.
A mewnosodwch Canolbarth(Gau,2,3), cewch als .
⧭ Cystrawen:
Cystrawen y Canol ffwythiant o VBA yw:
=Mid(String,Start as Long,[Length])
⧭ Dadleuon:
><13Dadl | Angenrheidiol / Dewisol | Esboniad |
---|---|---|
Llinyn | Angenrheidiol | Y llinyn o y bydd nifer o nodau yn cael eu dychwelyd. |
Cychwyn | Angenrheidiol | Nod cychwyn y llinyn fydd yn cael ei ddychwelyd. |
Hyd | Dewisol | Nifer y nodau fydd yn cael eu dychwelyd. Y rhagosodiad yw 1. |
⧭ Gwerth Dychwelyd:
Yn dychwelyd nifer penodol o nodau o'r canol llinyn, gan ddechrau o safle penodol.
3 Enghreifftiau o Swyddogaeth Ganol VBA yn Excel
Y tro hwn, gadewch i ni archwilio'r ffwythiant Canolbarth o VBA yn fanwl gydag ychydig o enghreifftiau.
1. Gwahanu Nifer Ganol o Gymeriadau o Ganol Rhai IDau Defnyddio Swyddogaeth Ganol VBA yn Excel
Yma mae gennym set ddata gyda'r IDs a Enwau rhai o weithwyr cwmni o'r enw Saturn Group.
Yma, y 4ydd i 7fed cymeriadau pob un Mae ID yn dynodi blwyddyn ymuno'r gweithiwr priodol.
Nawr byddwn yn datblygu swyddogaeth Wedi'i Ddiffinio gan Ddefnyddiwr gan ddefnyddio'r ffwythiant Canol o VBA bydd hynny'n tynnu blwyddyn ymuno pob cyflogai o'r ID Gweithiwr .
Gallwch ddefnyddio'r cod VBA canlynol:
⧭ Cod VBA:
1584
Sylwer: Y cod hwnyn creu ffwythiant o'r enw Ymuno_Blwyddyn .
⧭ Allbwn:
Rhedwch hwn gweithredu mewn unrhyw gell yn eich taflen waith gydag ID fel y ddadl.
Yma, yng nghell D4 , rydym wedi rhoi'r fformiwla:
=Joining_Year(B4)
Mae wedi dychwelyd blwyddyn ymuno y cyflogai cyntaf, 2021 .
Nawr gallwch lusgo'r Llenwch Handle i gael blynyddoedd ymuno gweddill y gweithwyr.
⧭ Eglurhad o'r Cod:
- Yn gyntaf, rydym yn datgan swyddogaeth o'r enw Ymuno_Blwyddyn sy'n cymryd ID fel y mewnbwn gan y llinell Function Joining_Year(ID) .
- Yna rydym yn echdynnu 4 nod o'r ID sy'n dechrau o safle 4 , wrth y llinell Joining_Year = Canolbarth(ID, 4, 4) .
- Mae'r llinell Diwedd Swyddogaeth yn datgan diwedd y ffwythiant.
2. Tynnu'r Estyniadau o Rai Cyfeiriadau E-bost Gan Ddefnyddio Swyddogaeth Ganol VBA yn Excel
Nawr rydym wedi ychwanegu colofn newydd at y set ddata, sy'n cynnwys cyfeiriadau E-bost y gweithwyr.
Y tro hwn byddwn yn echdynnu estyniadau'r Cyfeiriadau E-bost gan ddefnyddio'r ffwythiant Canol o VBA .
Y Cod VBA fydd:
⧭ Cod VBA:
3275
Sylwer: Y cod hwn yn creu ffwythiant o'r enw Estyniad .
⧭ Allbwn:
Rhedwch hwn gweithredu mewn unrhyw gell o'ch taflen waith gydag E-bost Cyfeiriad fel y ddadl.
Yma, yng nghell E4 , rydym wedi rhoi'r fformiwla:
=Extension(D4)
0>Mae wedi dychwelyd estyniad y cyfeiriad e-bost cyntaf.
Yna gallwch lusgo'r Fill Handle i echdynnu estyniadau'r holl e-bost cyfeiriadau.
⧭ Eglurhad o'r Cod
- Yn gyntaf, rydym yn datgan swyddogaeth o'r enw Estyniad sy'n cymryd unrhyw enw fel mewnbwn gan y llinell Estyniad Swyddogaeth(Email_Cyfeiriad) .
- Yna rydym yn dechrau iteriad gyda dolen am sy'n gwirio pob nod o'r Cyfeiriad E-bost i weld a yw'n @ ai peidio wrth y llinell Os Canol(Email_Address, i, 1) = “@” Yna .
- Os bydd yn dod o hyd i @ , yna mae'n tynnu'r estyniad gofynnol o'r Cyfeiriad E-bost wrth y llinell Estyniad = Canolbarth(Email_Address, i + 1, Len(Email_Address) – (i + 4)) .
- Yn olaf, rydym yn datgan diwedd y ffwythiant.
3. Gwirio Rhai Testunau i Weld a Ydynt Yn Cynnwys Testun Penodol neu Ddim
Un o ddefnyddiau pwysicaf y ffwythiant Canol yw gweld a yw testun yn cynnwys testun penodol ai peidio .
Dewch i ni ddatblygu swyddogaeth i wirio a yw'r Cyfeiriadau E-bost yn cynnwys y term "gmail" ai peidio.
Gallwch ddefnyddio'r canlynol Cod VBA :
⧭ Cod VBA:
1314
Sylwer: Mae'r cod hwn yn creu ffwythiant a elwir Wrthi'n gwirio .
⧭ Allbwn:
Rhedeg y ffwythiant hwn mewn unrhyw gell o'ch taflen waith gyda dau destun fel y ddadl.
Yma, yng nghell E4 , rydym wedi rhoi'r fformiwla:
=Checking(D4,"gmail")
<2 Mae wedi dychwelyd ie oherwydd mae'r cyfeiriad e-bost 1af yn gyfeiriad Gmail .
Yna gallwch lusgo'r Llenwch Handle i wneud yr un peth ar gyfer pob ID E-bost.
⧭ Eglurhad o'r Cod:<2
- Yn gyntaf, rydym yn datgan swyddogaeth o'r enw Gwirio sy'n cymryd dau destun fel y dadleuon wrth y llinell Gwirio Swyddogaeth(Testun1,Testun2) .
- Yna rydym yn cychwyn ar gyfer dolen sy'n gwirio pob segment o Text1 gan ddechrau o safle 1 , i weld a yw'n hafal i Text2 ai peidio , wrth y llinell If Mid(Text1, i, Len(Text2)) = Text2 Yna .
- Os daw o hyd i Text2 , yna mae'n dychwelyd "Ie" , fel arall mae'n dychwelyd "Na" .
- Yn olaf, rydyn ni'n gorffen y ffwythiant wrth y llinell Diwedd Swyddogaeth .
Pethau i'w Cofio
- Nid oes angen i'r arg 1af o'r ffwythiant Canol fod yn llinyn bob amser. Gall fod yn llinyn , yn rhif , neu hyd yn oed yn werth boolean .
- Ond mae'r 2il a
3ydd