Mündəricat
Excel-də VBA ilə işləyərkən istifadə etdiyimiz ən vacib və geniş istifadə olunan funksiyalardan biri VBA -nin Orta funksiyası -dir. O, giriş kimi sətir götürür və çıxış kimi sətirin ortasından müəyyən sayda simvol qaytarır. Bu gün bu məqalədə mən sizə VBA -nin Orta funksiyasını düzgün nümunələr və təsvirlərlə necə istifadə edə biləcəyinizi göstərəcəyəm.
Bu, 8-ci simvolundan başlayaraq “Angela Ketrin Nevills” sətirindən 9 simvol qaytaracaq. Bu “Ketrin” .
Təcrübə İş Kitabını endirin
Tapşırığı yerinə yetirərkən bu təcrübə kitabını endirin. siz bu məqaləni oxuyursunuz.
VBA Mid Function.xlsm
Excel-də VBA-nın Orta Funksiyasına Giriş
⧭ Funksiya Məqsədi:
Mid funksiyası giriş kimi bir dəyər alır və çıxış kimi dəyərin verilmiş mövqeyindən başlayaraq verilmiş simvol sayını qaytarır.
Qiymət sətir, rəqəm və ya hətta boolean ola bilər.
Məsələn, Mid("Angela Catherine Nevills",8,9) daxil etsəniz, "Catherine" qaytaracaq.
Əgər Mid(12345,2,3) , daxil etsəniz, 234 alacaqsınız.
Və Mid(False,2,3) daxil edin, als alacaqsınız.
⧭ Sintaksis:
Ortanın Sintaksisi VBA funksiyasının edir:
=Mid(String,Start as Long,[Length])
⧭ Arqumentlər:
Arqument | Tələb olunur / Könüllü | İzahat |
---|---|---|
String | Tələb olunur | hansı bir sıra simvol qaytarılacaq. |
Başlat | Tələb olunur | Qaytarılacaq sətirin başlanğıc simvolu. |
Uzunluq | Könüllü | Qaytarılacaq simvolların sayı. Defolt 1-dir. |
⧭ Qaytarma dəyəri:
Ortadan verilmiş simvol sayını qaytarır verilmiş mövqedən başlayaraq bir sətir.
Excel-də VBA-nın Orta Funksiyasına dair 3 Nümunə
Bu dəfə gəlin Orta funksiyanı araşdıraq VBA bir neçə nümunə ilə təfərrüatı ilə.
1. Excel-də VBA-nın Orta Funksiyasından İstifadə edərək Bəzi İdentifikatorların Ortasından Verilmiş Simvolların Ayrılması
Burada bizdə ID-lər və ilə məlumat dəsti var. Saturn Group adlı şirkətin bəzi işçilərinin adları .
Burada hər birinin 4-cü - 7-ci simvolları ID müvafiq işçinin qoşulma ilini bildirir.
İndi biz VBA -nin Orta funksiyasından istifadə edərək İstifadəçi tərəfindən təyin edilmiş funksiya hazırlayacağıq. bu, hər bir işçinin qoşulma ilini İşçi ID -dən çıxaracaq.
Aşağıdakı VBA kodundan istifadə edə bilərsiniz:
⧭ VBA Kodu:
5466
Qeyd: Bu kod Qoşulma_İli adlı funksiya yaradır.
⧭ Nəticə:
Bunu işə salın arqument kimi ID ilə iş vərəqinizin istənilən xanasında fəaliyyət göstərin.
Burada, D4 xanasına biz formula daxil etdik:
=Joining_Year(B4)
İlk işçinin qoşulma ilini qaytardı, 2021 .
İndi siz işarəsini sürükləyə bilərsiniz. Qalan işçilərin qoşulma illərini əldə etmək üçün Dəstəyi doldurun.
⧭ Məcəllənin izahı:
- İlk olaraq, Qoşulma_İli adlı funksiyanı elan edirik və Funksiya Qoşulması_İli(ID) xətti ilə giriş kimi ID götürür.
- Sonra 4 mövqeyindən başlayaraq ID-dən 4 simvol çıxarırıq, Qoşulma_İli = Orta(ID, 4, 4) sətri ilə.
- End Function sətri funksiyanın sonunu elan edir.
2. Excel-də VBA-nın Orta Funksiyasından İstifadə edərək Bəzi E-poçt Ünvanlarından Genişləndirmələrin çıxarılması
İndi biz məlumat dəstinə işçilərin e-poçt ünvanlarını ehtiva edən yeni sütun əlavə etdik.
Bu dəfə biz VBA -nin Mid funksiyasından istifadə edərək E-poçt Ünvanlarının genişləndirilməsini çıxaracağıq.
VBA kodu olacaq:
⧭ VBA Kodu:
3257
Qeyd: Bu kod Genişləndirmə adlı funksiya yaradır.
⧭ Nəticə:
Bunu işə salın E-poçt ilə iş vərəqinizin istənilən xanasında fəaliyyət göstərinArqument olaraq ünvanlayın.
Burada, E4 xanasına düstur daxil etdik:
=Extension(D4)
O, ilk e-poçt ünvanının genişləndirilməsini qaytardı.
Sonra bütün e-poçtun uzantılarını çıxarmaq üçün Doldurma Dəstəsini dartıb çıxara bilərsiniz. ünvanlar.
⧭ Kodun izahı
- İlk olaraq biz adlanan funksiyanı elan edirik. Genişləndirmə , Funksiya Genişlənməsi(E-poçt_Ünvanı) sətri ilə hər hansı bir ad qəbul edir.
- Sonra biz for-loop<2 ilə iterasiyaya başlayırıq> E-poçt ünvanı -nin hər simvolunun @ olub-olmadığını yoxlamaq üçün Əgər Orta(E-poçt_Ünvanı, i, 1) = “@” O zaman<2 sətri ilə yoxlayır> .
- Əgər @ tapsa, o zaman E-poçt Ünvanı -dan Genişləndirmə = Orta(E-poçt_Ünvanı, i) xətti ilə tələb olunan genişləndirməni çıxarır. + 1, Len(E-poçt_Ünvanı) – (i + 4)) .
- Nəhayət, funksiyanın sonunu elan edirik.
3. Bəzi Mətnlərin Müəyyən Mətn Tərkibində Olmadığını Görmək Üçün Yoxlanması
Orta funksiyanın ən mühüm istifadələrindən biri mətndə konkret mətnin olub-olmadığını görməkdir. .
Gəlin E-poçt Ünvanlarında “gmail” termininin olub-olmadığını yoxlamaq üçün funksiya hazırlayaq.
Aşağıdakılardan istifadə edə bilərsiniz VBA kodu:
⧭ VBA Kodu:
7203
Qeyd: Bu kod funksiya yaradır çağırdı Yoxlanılır .
⧭ Nəticə:
Bu funksiyanı istənilən xanada işlədin arqument olaraq iki mətnlə iş vərəqinizin.
Burada, E4 xanasına düsturu daxil etdik:
=Checking(D4,"gmail")
O, bəli qaytardı, çünki 1-ci e-poçt ünvanı Gmail ünvanıdır.
Sonra siz Bütün E-poçt İdentifikatorları üçün eyni şeyi etmək üçün Doldurma Dəstəyi .
⧭ Kodun izahı:
- Birincisi, Funksiya Yoxlanması(Mətn1,Mətn2) xətti ilə iki mətni arqument kimi qəbul edən Yoxlama adlı funksiyanı elan edirik.
- Sonra 1 mövqeyindən başlayaraq Mətn1 -ın hər bir seqmentini yoxlayan for döngəsinə başlayırıq, bunun Mətn2 -a bərabər olub-olmadığını görmək üçün , sətirlə Əgər Orta(Mətn1, i, Len(Mətn2)) = Mətn2 Sonra .
- Əgər Mətn2 tapırsa, o zaman “Bəli” qaytarır, əks halda “Xeyr” qaytarır.
- Nəhayət, Funksiyanı Sonlandır sətri ilə funksiyanı yekunlaşdırırıq.
Yadda saxlanmalı olanlar
- Mid funksiyası -nin 1-ci arqumenti həmişə sətir olmaq məcburiyyətində deyil. Bu, sətir , rəqəm və ya hətta boolean dəyəri ola bilər.
- Lakin 2-ci və 3-cü arqumentlər rəqəmlər olmalıdır. Onlar tam ədədlər və ya kəsrlər ola bilər, lakin ədədlər olmalıdır. Əgər onlar kəsrlərdirlər , onda Ortafunksiya onları ən yaxın tam ədədlərə çevirəcək.