درباره نویسنده
عملگرهای محاسباتی
عملگرها علامت یا نشانههایی هستند که نوع محاسبات در یک فرمول را مشخص میکنند. عملگرهایی را که میتوانیم در فرمولها بهکار ببریم به ۴ دسته تقسیم میشوند. عملگرهای ریاضی، رشتهای، منطقی و آدرس سلولها.
عملگرهای ریاضی
این عملگرها به روی مقادیر عددی عمل میکنند و به ترتیب تقدم در جدول 1 آورده شدهاند.
عملگر | شرح | کارکرد | مثال |
---|---|---|---|
% | درصد | عدد را در 100 ضرب میکند. | =1/2% |
^ | توانرسانی | عمل به توان رساندن را انجام میدهد. | =3^2 |
* | ضرب | عمل ضرب را انجام میدهد. | =A1*A2 |
/ | تقسیم | عمل تقسیم را انجام میدهد. | =Sum(A1:A5)/2 |
+ | جمع | عمل جمع را انجام میدهد. | =4+3 |
− | تفریق | عمل تفریق را انجام میدهد. | =B1-1 |
عملگرهای ریاضی
در فرمولهای پیچیده میتوانیم برای تقدم عملگرها از پرانتز استفاده کنیم. در پردازش فرمولها، ابتدا عبارتهای داخل پرانتز به ترتیب تقدم محاسبه میشوند. عملگرهایی که داری اولویت یکسان هستند از چپ به راست محاسبه میشوند.
مثال
فرض کنید میخواهیم ترتیب مراحل انجام محاسبه فرمول زیر را مشخص کنیم.
=B3*4/B4^2+(A2-A5+2)
- ابتدا مقدار داخل پرانتز محاسبه میشود.
- مقدار A5 از A2 کم شده و سپس با 2 جمع میشود.
- مقدار B4 به توان 2 میرسد.
- مقدار B3 در عدد 4 ضرب میشود.
- حاصل ضرب، تقسیم بر حاصل توان میشود.
- حاصل تقسیم با حاصل پرانتز جمع میشود.
بهتر است برای خوانایی دستورات محاسباتی از پرانتزها استفاده شود، حتی اگر بدون پرانتزها نیز نتیجه مورد نظر از محاسبات حاصل شده باشد.
بیشتر بخوانید: کامنتگذاری در سلولها
عملگر رشتهای
تنها عملگر رشتهای، عملگر & میباشد که از آن میتوانیم برای ترکیب رشتهها استفاده کنیم. این عملگر چند عبارت متنی، چند سلول یا نتیجه یک فرمول را با هم ترکیب کرده و آن را تبدیل به یک رشته میکند. اگر بخواهیم در فرمول از مقادیر رشتهای استفاده کنیم باید آنها را بین "" قرار دهیم.
مثال
فرض کنید میخواهیم مقدار سلول A1 و B1 را ترکیب کرده و نتیجه را با یک فاصله در سلول C1 نشان دهیم. برای اینکار فرمول زیر را در سلول C1 تعریف میکنیم.
=A1&" "&B1
فرمول دارای عملگر رشتهای
اگر بخواهیم خروجی یک رشته را بین "" قرار دهیم، باید از تابع Char استفاده کنیم. این تابع کاراکتر معادل کد ASCII که به آن داده میشود را به عنوان نتیجه برمیگرداند. مثلا فرمول زیر نتیجه مثال قبل را بین "" قرار میدهد. مقدار 34 در این تابع معادل کاراکتر گیومه میباشد.
=CHAR(34)&A1&" "&B1&CHAR(34)
عملگرهای منطقی
عملگرهای منطقی امکان مقایسه دو یا چند داده را فراهم میکنند و مقدار True یا False را به عنوان نتیجه مقایسه برمیگردانند، به همین دلیل به آنها عملگرهای مقایسهای هم گفته میشود. اولویت اجرای این عملگرها، پس از عملگرهای ریاضی و عملگر رشتهای است.
عملگر | شرح | مثال | نتیجه فرمول |
---|---|---|---|
= | برابر با | =A1=B1 | اگر سلول A1 برابر با B1 باشد، مقدار True و اگر برابر نباشد مقدار False به عنوان نتیجه برگردانده میشود. |
> | بزرگتر از | =A1>B1 | اگر سلول A1 بزرگتر از B1 باشد، مقدار True و اگر کوچکتر باشد مقدار False به عنوان نتیجه برگردانده میشود. |
< | کوچکتر از | =A1اگر سلول A1 کوچکتر از B1 باشد، مقدار True و اگر بزرگتر باشد مقدار False به عنوان نتیجه برگردانده میشود. | |
>= | بزرگتر یا مساوی | =A1>=B1 | اگر سلول A1 بزرگتر یا مساوی B1 باشد، مقدار True و در غیر اینصورت مقدار False به عنوان نتیجه برگردانده میشود. |
<= | کوچکتر یا مساوی | =A1<=B1 | اگر سلول A1 کوچکتر یا مساوی B1 باشد، مقدار True و در غیر اینصورت مقدار False به عنوان نتیجه برگردانده میشود. |
<> | مخالف با | =A1<>B1 | اگر سلول A1 برابر با B1 نباشد، مقدار True و اگر برابر باشد مقدار False به عنوان نتیجه برگردانده میشود. |
عملگرهای منطقی
مثال اول: مقایسه تاریخ
فرض کنید مقدار سلولهای A1 و B1 را برابر با 2018/12/20 از جنس تاریخ قرار دادهایم. میخواهیم با کمک یکی از فرمولهای زیر مقدار سلولهای A1 و B1 را مقایسه کنیم. اگر در سلول C1 فرمول اول را بنویسیم مقدار True به عنوان نتیجه برگردانده میشود، و اگر فرمول دوم را بنویسیم مقدار False برگردانده میشود.
=A1=B1
=A1="2018/12/20"
در اکسل تاریخ به صورت عدد ذخیره شده و مبنای محاسبات آن تاریخ 1900/01/01 میباشد که مقدار آن برابر با 1 است و عدد متناظر با تاریخ 2018/12/20 برابر با 43,454. مقدار 2018/12/20 یک رشته بوده و یک رشته نمیتواند با عدد 43,454 برابر باشد، به همین دلیل مقدار False به عنوان نتیجه فرمول دوم برگردانده شد.
برای گرفتن نتیجه درست از این مقایسه، باید مقدار تاریخ را در تابع Datevalue قرار دهیم.
=A1=DATEVALUE("2018/12/20")
مقایسه تاریخ توسط عملگر منطقی
مثال دوم: مقایسه True و False
همیشه مقدار عددی True برابر با 1 و مقدار عددی False برابر با صفر میباشد، اما برای مقایسه آنها با مقادیر عددی باید تغییراتی را انجام دهیم. برای اینکه مقدار True و False در مقایسه عدد در نظر گرفته شوند باید از دو علامت منفی −− در پشت مقدار True و False استفاده کنیم. این دو علامت منفی، مقدار عددی True و False را فراخوانی میکند.
اولین علامت منفی مقادیر منطقی را به صفر و -1 تبدیل میکند، و علامت منفی دوم مقدار منفی را به مثبت تبدیل میکند.
فرض کنید میخواهیم با استفاده از فرمولهای زیر مقادیر True و False را با مقادیر عددی صفر و 1 مقایسه کنیم. فرمول اول مقدار عددی سلول A1 را با مقدار منطقی سلول B1، و فرمول دوم مقدار عددی سلول A2 را با مقدار منطقی سلول B2 مقایسه میکند.
=A1=--B1
=A2=--B2
مقایسه True و False توسط عملگر منطقی
مثال سوم: ترکیب عملگرهای منطقی با توابع
در اکسل عملگرهای منطقی به تنهایی کاربرد خاصی ندارند و در ترکیب با توابع کاربرد خود را نشان میدهند. به طور مثال میتوانیم از این عملگرها به عنوان شرط منطقی در تابع If استفاده کنیم. در فرمول زیر اگر مقدار سلول A1 بزرگتر یا مساوی B1 باشد، عبارت مجاز و در غیر اینصورت عبارت غیرمجاز به عنوان نتیجه برگردانده میشود.
=IF(A1>=B1,"مجاز","غیرمجاز")
بیشتر بخوانید: فیلتر کردن دادهها توسط ابزار Filter
عملگرهای آدرس سلولها
برای تعیین محدودهای از سلولها، میتوانیم از عملگر آدرس استفاده کنیم. اولویت عملگرهای آدرس از تمام عملگرهای دیگر بالاتر است. عملگر آدرس ترکیبی از سه عملگر جدول 3 میباشد.
در اکسل 3 حالت برای آدرسدهی محدوده وجود دارد.
- آدرسدهی محدودهای از سلولها (A1:F5) − به سلولهای بین و خود سلولهای A1 و F5 اشاره میکند.
- آدرسدهی ستونی (A1:A5) − نام ستون ثابت و شماره سطر تغییر میکند.
- آدرسدهی سطری (A1:F1) − نام ستون تغییر کرده و شماره سطر ثابت میماند.
عملگر | شرح | مثال |
---|---|---|
: | عملگر محدودهای است که یک آدرس به تمام سلولهای بین دو آدرس اشاره میکند و شامل دو آدرس نیز میباشد. | A1:A5 |
, | عملگر ترکیب دو محدودهای است که به تمام سلولهای هر دو محدوده اشاره میکند. | Sum(A1:A5,B1:B5) |
فضای خالی (Space) | عملگر اشتراک محدودهها میباشد که به تمام سلولهای مشترک دو محدوده اشاره میکند. | A1:A5 B1:B5 |
عملگرهای آدرس سلولها
مثال
فرض کنید میخواهیم در محدوده تصویر 4 اشتراک دو محدوده را پیدا کنیم. برای اینکار فرمول زیر را در یک سلول تعریف میکنیم.
=A1:B3 B3:C5
پیدا کردن اشتراک محدودهها توسط عملگر Space
اگر اشتراک دو محدوده بیشتر از یک سلول باشد، یک آرایه به وجود خواهد آمد. اگر این آرایه را در یک تابع قرار دهیم، میتوانیم عملیاتی را به روی محدوده مشترک آن انجام دهیم. در غیر اینصورت با خطای #Value! مواجه میشویم.
فرض کنید میخواهیم ببینیم در محدوده تصویر 5 چه تعداد سلول پر در ناحیه مشترک دو محدوده وجود دارد. برای این کار تابع Counta را در یک سلول تعریف میکنیم. این فرمول سلولهای پر مشترک در دو محدوده را شمارش کرده و عدد 2 را به عنوان نتیجه برمیگرداند.
=COUNTA(A1:B3 B2:C5)
شمارش سلولهای پر آرایه توسط عملگر Space
بیشتر بخوانید: نمایش عبارتهای طولانی در یک سلول
اولویت عملگرها
اجرای عملگرها به ترتیب و برحسب اولویت آنها انجام میشود و در نتیجه محاسبات تاثیر دارد. ترتیب اجرا به اولویت عملگرها بستگی دارد. اگر دو عملگر دارای اولویت یکسان باشند، به ترتیب از چپ به راست اجرا میشوند. همچنین استفاده از پرانتزها، اولویت اجرا را تغییر میدهد و داخلیترین پرانتز، اول اجرا میشود.
مثال
فرض کنید میخواهیم نتیجه فرمولهای زیر را بررسی کنیم.
=2+5*3
=(2+5)*3
در فرمول اول، ابتدا ضرب بین 5 و 3 محاسبه میشود که حاصل آن 15 است، سپس این مقدار با عدد 2 جمع شده و عدد 17 به عنوان نتیجه محاسبه میشود. در فرمول دوم، ابتدا عبارت داخل پرانتز محاسبه میشود. داخل پرانتز فقط عملگر جمع بوده و حاصل جمع دو عدد 2 و 5، عدد 7 خواهد بود، سپس این مقدار در عدد 3 ضرب شده و عدد 21 به عنوان نتیجه محاسبه میشود.