فهرست مطالب
یکی از مهم ترین و پرکاربردترین توابعی که هنگام کار با VBA در اکسل استفاده می کنیم، تابع Mid از VBA است. یک رشته را به عنوان ورودی می گیرد و تعداد معینی از کاراکترها را از وسط رشته به عنوان خروجی برمی گرداند. امروز در این مقاله، به شما نشان خواهم داد که چگونه می توانید از عملکرد Mid VBA با مثال ها و تصاویر مناسب استفاده کنید.
این کاراکتر 9 را از رشته "Angela Catherine Nevills" ، از نویسه 8 باز می گرداند. این "کاترین" است .
دانلود کتاب تمرین تمرین
این کتاب تمرینی را دانلود کنید تا در حین انجام کار شما در حال خواندن این مقاله هستید.
VBA Mid Function.xlsm
مقدمه ای بر Mid Function VBA در Excel
⧭ هدف تابع:
تابع Mid مقداری را به عنوان ورودی می گیرد و تعداد معینی از کاراکترها را برمیگرداند که از یک موقعیت معین مقدار به عنوان خروجی شروع میشوند.
مقدار میتواند یک رشته، عدد یا حتی یک Boolean باشد.
به عنوان مثال، اگر Mid ("Angela Catherine Nevills",8,9) را وارد کنید، "Catherine" را برمیگرداند.
اگر Mid(12345,2,3) را وارد کنید، 234 را دریافت خواهید کرد.
و Mid(False,2,3) را وارد کنید، شما als را دریافت خواهید کرد.
⧭ نحو:
Syntax of the Mid تابع از VBA is:
=Mid(String,Start as Long,[Length])
⧭ آرگومان ها:
Argument | لازم / اختیاری | توضیح |
---|---|---|
رشته | لازم | رشته از که تعدادی از کاراکترها برگردانده خواهند شد. |
شروع | لازم | کاراکتر شروع رشته ای که برگردانده می شود. |
طول | اختیاری | تعداد کاراکترهایی که برگردانده میشوند. پیشفرض 1 است. |
⧭ مقدار بازگشتی:
تعداد معینی از کاراکترها را از وسط برمیگرداند از یک رشته، از یک موقعیت مشخص شروع می شود.
3 مثال از تابع Mid VBA در اکسل
این بار، اجازه دهید تابع Mid<را بررسی کنیم. 2> از VBA به تفصیل با چند مثال.
1. جدا کردن تعداد مشخصی از نویسه ها از وسط برخی از شناسه ها با استفاده از تابع Mid VBA در اکسل
در اینجا ما یک مجموعه داده با IDs و داریم. نام برخی از کارمندان شرکتی به نام Saturn Group.
در اینجا، چهارمین تا هفتمین شخصیت های هر یک شناسه نشاندهنده سال عضویت کارمند مربوطه است.
اکنون یک عملکرد تعریفشده توسط کاربر با استفاده از عملکرد Mid از VBA ایجاد میکنیم. که سال عضویت هر کارمند را از شناسه کارمند استخراج می کند.
شما می توانید از کد VBA زیر استفاده کنید:
⧭ کد VBA:
2406
توجه: این کدتابعی به نام سال پیوستن ایجاد می کند.
⧭ خروجی:
این را اجرا کنید در هر سلولی از کاربرگ شما با یک شناسه به عنوان آرگومان عمل کنید.
در اینجا، در سلول D4 ، فرمول را وارد کرده ایم:
=Joining_Year(B4)
سال عضویت اولین کارمند، 2021 را برگردانده است.
اکنون می توانید را بکشید. برای دریافت سنوات عضویت بقیه کارکنان، Handle را پر کنید.
⧭ توضیح کد:
- ابتدا، تابعی به نام Joining_Year اعلام می کنیم که یک شناسه را به عنوان ورودی خط Function Joining_Year(ID) می گیرد.
- سپس نویسه های 4 را از شناسه استخراج می کنیم که از موقعیت 4 شروع می شود، با خط Joining_Year = Mid(ID, 4, 4) .
- خط عملکرد پایان پایان تابع را اعلام می کند.
2. استخراج برنامههای افزودنی از برخی آدرسهای ایمیل با استفاده از تابع Mid VBA در اکسل
اکنون یک ستون جدید به مجموعه داده اضافه کردهایم که حاوی آدرسهای ایمیل کارکنان است.
این بار با استفاده از تابع Mid VBA ، پسوندهای آدرسهای ایمیل را استخراج میکنیم.
کد VBA خواهد بود:
⧭ کد VBA:
9809
توجه: این کد تابعی به نام Extension ایجاد می کند.
⧭ خروجی:
این را اجرا کنید در هر سلول از کاربرگ خود با ایمیل کار کنیدآدرس به عنوان آرگومان.
در اینجا، در سلول E4 ، فرمول را وارد کرده ایم:
=Extension(D4)
پسوند آدرس ایمیل اول را برگردانده است.
سپس می توانید Fill Handle را بکشید تا پسوندهای تمام ایمیل ها را استخراج کنید. آدرس ها.
⧭ توضیح کد
- ابتدا تابعی به نام برنامه که هر نامی را به عنوان ورودی خط Function Extension(Email_Address) می گیرد.
- سپس یک تکرار را با یک for-loop<2 شروع می کنیم> که هر کاراکتر آدرس ایمیل را بررسی می کند تا ببیند آیا @ است یا نه از طریق خط If Mid(Email_Address, i, 1) = "@" سپس .
- اگر @ پیدا کرد، پسوند مورد نیاز را از آدرس ایمیل با خط Extension = Mid(Email_Address, i استخراج می کند. + 1, Len(Email_Address) – (i + 4)) .
- در نهایت پایان تابع را اعلام می کنیم.
3. بررسی برخی از متون برای مشاهده اینکه آیا متن خاصی دارند یا نه
یکی از مهمترین کاربردهای عملکرد Mid این است که ببینید آیا یک متن حاوی متن خاصی است یا خیر. .
بیایید یک تابع ایجاد کنیم تا بررسی کنیم که آیا آدرس های ایمیل عبارت "gmail" را دارند یا نه.
می توانید از موارد زیر استفاده کنید VBA کد:
⧭ کد VBA:
9608
توجه: این کد یک تابع ایجاد می کند تماس گرفت بررسی .
⧭ خروجی:
این تابع را در هر سلولی اجرا کنید از کاربرگ شما با دو متن به عنوان آرگومان.
در اینجا، در سلول E4 ، فرمول را وارد کرده ایم:
=Checking(D4,"gmail")
برگشت بله زیرا اولین آدرس ایمیل یک آدرس Gmail است.
سپس می توانید آن را بکشید Handle را پر کنید تا این کار را برای همه شناسه های ایمیل انجام دهید.
⧭ توضیح کد:
- ابتدا تابعی به نام Checking اعلام می کنیم که دو متن را به عنوان آرگومان در خط Function Check(Text1,Text2) می گیرد.
- سپس یک حلقه for راهاندازی میکنیم که هر بخش از Text1 را از موقعیت 1 بررسی میکند تا ببینیم آیا برابر با Text2 است یا خیر. ، با خط اگر Mid(Text1, i, Len(Text2)) = Text2 سپس .
- اگر Text2 را پیدا کرد، "بله" را برمیگرداند، در غیر این صورت "نه" را برمیگرداند.
- در نهایت، تابع را با خط عملکرد پایان نتیجه می گیریم.
چیزهایی که باید به خاطر بسپارید
- آگومان 1st تابع Mid لازم نیست همیشه یک رشته باشد. این می تواند یک رشته ، یک عدد ، یا حتی یک مقدار بولی باشد.
- اما 2nd و<آرگومان های 1> 3 باید اعداد باشند. آنها می توانند اعداد صحیح یا کسری باشند اما باید اعداد باشند. اگر آنها کسری هستند، سپس Midتابع آنها را به نزدیکترین اعداد صحیح تبدیل می کند .