A VBA Mid funkció használata az Excelben (3 példa)

  • Ossza Meg Ezt
Hugh West

Az egyik legfontosabb és legszélesebb körben használt funkció, amit a következő programokkal dolgozva használunk VBA az Excelben a Középső funkció a VBA Bemenetként egy karakterláncot fogad el, és kimenetként a karakterlánc közepéből adott számú karaktert ad vissza. Ma ebben a cikkben megmutatom, hogyan használhatod a Középső funkció a VBA megfelelő példákkal és illusztrációkkal.

Ez visszaadja 9 karakterek a karakterláncból "Angela Catherine Nevills" , kezdve a 8. karakter. Ez "Catherine" .

Gyakorlati munkafüzet letöltése

Töltse le ezt a gyakorlókönyvet, hogy gyakorolja a feladatot, miközben ezt a cikket olvassa.

VBA Mid Function.xlsm

Bevezetés a VBA Mid funkciójába az Excelben

Funkció célkitűzés:

A Mid függvény bemenetként egy értéket fogad el, és kimenetként az érték adott pozíciójától kezdődően adott számú karaktert ad vissza.

Az érték lehet egy string, szám , vagy akár egy boolean .

Például, ha beilleszti a Mid("Angela Catherine Nevills",8,9), visszatér. "Catherine" .

Ha beilleszti Mid(12345,2,3) , megkapod 234.

És helyezze be Mid(False,2,3) , megkapod als .

Szintaxis:

A szintaxis a Középső funkció a VBA az:

=Mid(String,Start as Long,[Length])

Érvek:

Érv Kötelező / választható Magyarázat
String Kötelező Az a karakterlánc, amelyből a karakterek száma visszakerül.
Indítsa el a oldalt. Kötelező A visszaadandó karakterlánc kezdő karaktere.
Hosszúság Opcionális A visszaküldött karakterek száma. Alapértelmezett érték 1.

Visszatérési érték:

Visszaad egy karakterlánc közepéből adott számú karaktert, egy adott pozíciótól kezdve.

3 példa a VBA Mid funkciójára az Excelben

Ezúttal vizsgáljuk meg a Középső funkció a VBA részletesen, néhány példával.

1. Adott számú karakter elválasztása néhány azonosító közepétől a VBA VBA Mid funkciójának használatával az Excelben

Itt van egy adathalmazunk, amelynek a Azonosítók és Nevek a Saturn Group nevű cég néhány alkalmazottja.

Itt a 4. a címre. 7. az egyes azonosítók karakterei az adott munkavállaló belépési évét jelölik.

Most kifejlesztünk egy Felhasználó által meghatározott funkció a Középső funkció a VBA amely minden egyes alkalmazott csatlakozási évét kivonja a Alkalmazotti azonosító .

A következőket használhatja VBA kód:

VBA-kód:

 Function Joining_Year(ID) Joining_Year = Mid(ID, 4, 4, 4) End Function 

Megjegyzés: Ez a kód létrehoz egy függvényt Csatlakozás_év .

Kimenet:

Futtassa ezt a függvényt a munkalap bármely cellájában, amelynek argumentuma egy azonosító.

Itt, a cellában D4 , beírtuk a képletet:

=Joining_Year(B4)

Visszaadta az első alkalmazott belépési évét, 2021 .

Most már húzhatja a Töltse ki a fogantyút a többi munkavállaló csatlakozási éveinek megismerése.

A kódex magyarázata:

  • Először is, deklarálunk egy függvényt Csatlakozás_év amely egy azonosítót fogad el bemenetként a sorban Function Joining_Year(ID) .
  • Ezután kivonjuk 4 karakterek az azonosítóból, a pozíciótól kezdve 4 , a vonal mellett Joining_Year = Mid(ID, 4, 4, 4) .
  • A vonal Funkció vége a függvény végét jelöli ki.

2. A kiterjesztések kivonása néhány e-mail címből a VBA VBA Mid funkciójának használatával az Excelben

Most egy új oszlopot adtunk hozzá az adathalmazhoz, amely az alkalmazottak e-mail címét tartalmazza.

Ezúttal az e-mail címek kiterjesztéseit fogjuk kivonni a Mid a VBA .

A VBA kód lesz:

VBA-kód:

 Function Extension(Email_Adcím) For i = 1 To Len(Email_Adcím) If Mid(Email_Adcím, i, 1) = "@" Then Extension = Mid(Email_Adcím, i + 1, Len(Email_Adcím) - (i + 4)) End If Next i End Function 

Megjegyzés: Ez a kód létrehoz egy függvényt Hosszabbítás .

Kimenet:

Futtassa ezt a függvényt a munkalap bármely cellájában egy E-mail cím mint érv.

Itt, a cellában E4 , beírtuk a képletet:

=Extension(D4)

Visszaküldte az első e-mail cím kiterjesztését.

Ezután húzza a Töltse ki a fogantyút hogy kivonja az összes e-mail cím kiterjesztését.

A kódex magyarázata

  • Először is, deklarálunk egy függvényt Hosszabbítás amely bármilyen nevet elfogad bemenetként a sorban Funkció Extension(Email_Adress) .
  • Ezután elkezdünk egy iterációt egy for-loop amely minden egyes karaktert ellenőriz a E-mail cím hogy lássuk, hogy @ vagy nem a vonal által If Mid(Email_Address, i, 1) = "@" Then .
  • Ha talál egy @ , majd kivonja a kívánt kiterjesztést a E-mail cím a vonal mellett Extension = Mid(Email_Address, i + 1, Len(Email_Address) - (i + 4)) .
  • Végül deklaráljuk a függvény végét.

3. Néhány szöveg ellenőrzése annak megállapítására, hogy tartalmaznak-e egy adott szöveget vagy sem

Az egyik legfontosabb felhasználási módja a Középső funkció az, hogy megnézzük, hogy egy szöveg tartalmaz-e egy adott szöveget vagy sem.

Fejlesszünk ki egy függvényt, amely ellenőrzi, hogy a E-mail címek tartalmazzák a következő kifejezést "gmail" vagy nem.

A következőket használhatja VBA kód:

VBA-kód:

 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 

Megjegyzés: Ez a kód létrehoz egy függvényt Ellenőrzés .

Kimenet:

Futtassa ezt a függvényt a munkalap bármely cellájában két szöveggel, mint argumentummal.

Itt, a cellában E4 , beírtuk a képletet:

=Checking(D4, "gmail")

Visszatért igen mert az 1. e-mail cím egy Gmail cím.

Ezután húzza a Töltse ki a fogantyút hogy ugyanezt tegye az összes e-mail azonosító esetében.

A kódex magyarázata:

  • Először is, deklarálunk egy függvényt Ellenőrzés amely két szöveget vesz fel argumentumként a következő sorban Funkció Ellenőrzés(Text1,Text2) .
  • Ezután egy for ciklusba kezdünk, amely minden egyes szegmensét ellenőrzi a Text1 kiindulási helyzet 1 , hogy lássuk, egyenlő-e a Text2 vagy nem, a sor szerint Ha Mid(Text1, i, Len(Text2)) = Text2 Akkor .
  • Ha azt találja, hogy Text2 , akkor visszatér "Igen" , különben visszaadja "Nem" .
  • Végül a függvényt a következő egyenessel zárjuk le Funkció vége .

Emlékezetes dolgok

  • A 1. érv a Középső funkció nem kell mindig egy karakterláncnak lennie. Lehet egy string , a szám , vagy akár egy boolean érték.
  • De a 2. és 3. az érveknek számok Lehetnek egész számok vagy frakciók de kell, hogy legyen számok . Ha ők frakciók , akkor a Középső funkció átváltja őket a legközelebbi egész számok .

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.