تابع OR
تابع OR در اکسل یک تابع منطقی است که برای بررسی وجود حداقل یک عبارت منطقی درست در مجموعهای از عبارتهای منطقی استفاده میشود.
✅ در ابتدا، شما یکسری عبارتهای منطقی به این تابع میدهید که هر یک از آنها دو حالت دارند: یا درست هستند، یا غلط (TRUE یا FALSE).
✅ آنگاه، تابع OR صحت این عبارتها را تست میکند: اگر حداقل یک عبارت منطقی درست پیدا کرد در خروجی مقدار TRUE را به ما ارائه میدهد. در غیر اینصورت (اگر هم هیچ عبارت درستی پیدا نکرد) در خروجی مقدار FALSE را میدهد.
این تابع اکسل در پیادهسازی مدلهای تصمیمگیری کاربرد دارد. خصوصاً اگر با سایر توابع منطقی اکسل ترکیب شود، کاربردهای آن بیشتر مشخص خواهد شد.
در ادامه بیشتر با این تابع منطقی آشنا میشوید.
نحوه نوشتن تابع OR
ساختار کلی تابع OR به صورت زیر است:
=OR(logical1, [logical2], ...)
ورودیهای این تابع به شرح زیر است:
- logical1: اولین مقدار منطقی که باید بررسی شود (اجباری).
- logical2: دومین مقدار منطقی که باید بررسی شود (اختیاری)
- … : تا 255 ورودی امکان پذیر است.
اگر تابع OR را به شکل یک تابع ریاضی ببینیم، ورودیها و خروجی این تابع را میتوان به شکل زیر نشان داد:
حالا کاری که تابع OR میکند این است:
تمام ورودیهای منطقی بررسی میکند، اگر حداقل یک عبارت منطقی درست (TRUE) پیدا کرد، مقدار TRUE را برمیگرداند وگرنه FALSE را برمیگرداند.
توجه داشته باشید:
- ورودیهای تابع OR میتوانند عبارات ثابت منطقی، ارجاع به سلولها، آرایهها یا مقادیر ثابت عددی باشند.
- درست است که 255 ورودی برای این تابع در نظر گرفته شده است ولی هر کدام از ورودیها میتوانند شامل مجموعهی بزرگی از عبارات منطقی باشند.
- تابع OR مقادیر متنی و سلولهای خالی در ورودیها را در نظر نمیگیرد.
- ورودیهای تابع OR باید قابلیت تبدیل به TRUE یا FALSE را داشته باشند.
- اکسل هر عددی به جز صفر (0) را به عنوان TRUE ارزیابی می کند.
- تابع OR به حروف بزرگ و کوچک انگلیسی حساس نیست.
انواع مختلف ورودی در تابع OR
ورودیهای تابع OR عبارتهایی منطقی هستند.
اطلاعات این ورودیها به شکلهای مختلفی میتوانند وارد شود که در ادامه این موضوع را بررسی میکنیم:
ورود مستقیم مقدار TRUE یا FALSE
میتوان به طور مستقیم مقادیر منطقی را در تابع OR وارد کرد. به عنوان مثال:
=OR(TRUE)
خروجی تابع بالا TRUE است چون تنها یک ورودی دارد و همان هم TRUE است. پس اینکه "حداقل یک ورودی صحیح باشد" صحت دارد.
ارجاع به سلول
شما میتوانید از ارجاع به سلولها استفاده کنید. یعنی آدرس سلول را مسقیماً داخل تابع بنویسید. مثلاً:
=OR(A1)
ارجاع به ناحیهای از کاربرگ
فرض کنید سلولهای A1 و A2 مقدار TRUE و سلول A3 مقدار FALSE را داشته باشند. در این صورت فرمول زیر را در نظر بگیرید:
=OR(A1:A3)
در این فرمول، آدرس یک ناحیه از اکسل در تابع OR وارد شده است و خروجی تابع OR مقدار TRUE است چون در بین سلولهای A1 و A2 و A3، حداقل یک مورد TRUE وجود دارد.
استفاده از مقادیر ثابت عددی
با یادآوری این موضوع که در اکسل، تمامی اعداد غیر صفر معادل TRUE هستند، مثالهای زیر را در نظر بگیرید:
=OR(0)
=OR(1)
=OR(3, 5, -2)
در فرمولهای بالا، ورودیها مقادیر ثابت عددی هستند.
در فرمول اول، مقدار صفر معادل FALSE است، بنابراین خروجی تابع نیز FALSE خواهد بود. چون تابع OR نمیتواند حداقل یک TRUE پیدا کند.
خروجی تابع دوم و سوم هم TRUE خواهد بود. چون همه اعداد وارد شده غیرصفر (معادل TRUE) هستند. بنابراین در فرمول دوم و سوم، تابع OR میتواند حداقل یک ورودی درست پیدا کند.
وارد کردن مقدار ثابت متنی
در مثال زیر، خروجی تابع TRUE است.
=OR(0 , "Text" , 3)
چون اولاً یکی از ورودیها مقداری متنی است و تابع OR آن را در نظر نمیگیرد. بنابراین فقط عدد صفر و 3 میماند.
اما از طرفی، عدد صفر از نظر تابع OR معادل FALSE و عدد 3 معادل TRUE است. بنابراین تابع بالا را میتوان به شکل زیر نوشت:
=OR(FALSE , TRUE)
در بین دو ورودی منطقی، حداقل یک مقدار TRUE وجود دارد پس خروجی تابع TRUE خواهد بود.
ورود مستقیم آرایه
در مثال زیر یک آرایه با مقادیر 1 و 0 و 3 جزء ورودیهای OR آمده است.
=OR({1,0,3})
از نظر اکسل، مقدار صفر معادل FALSE و مقدارهای 1 و 2 معادل TRUE قلمداد میشود. از آنجا حداقل یک عبارت منطقی TRUE در این آرایه وجود دارد، خروجی تابع در نهایت TRUE خواهد بود.
نوشتن عبارت منطقی در ورودیهای تابع OR
برای وارد کردن عبارت منطقی در ورودیهای تابع OR، میتوانید از عملگرهای شرطی زیر استفاده کنید:
- برابر (==): بررسی میکند که دو مقدار برابر هستند.
- نابرابر (!=): بررسی میکند که دو مقدار برابر نیستند.
- بزرگتر از (>): بررسی میکند که یک مقدار از مقدار دیگر بزرگتر است.
- کمتر از (<): بررسی میکند که یک مقدار از مقدار دیگر کوچکتر است.
- بزرگتر یا مساوی با (>=): بررسی میکند که یک مقدار از مقدار دیگر بزرگتر یا مساوی است.
- کمتر یا مساوی با (<=): بررسی میکند که یک مقدار از مقدار دیگر کوچکتر یا مساوی است.
حالا بیایید دو مثال را با هم بررسی کنیم:
عملگرهای منطقی و مقادیر متنی
برای بررسی اینکه آیا در سلول A1 حداقل یکی از دو مقدار متنی "Red" یا "Green" قرار گرفته است یا نه، میتوانید از فرمول زیر استفاده کنید:
=OR(A1="Red",A1="Green")
توجه داشته باشید که چون این تابع به حروف بزرگ و کوچک حساس نیست، پس میتواند به جای "Red" موارد دیگر یعنی "red" یا "RED" یا "reD" نیز قرار بگیرد. با در نظر گرفتن این موضوع، اگر حداقل یکی از دو مقدار متنی "Red" یا "Green" (با ترکیبهای مختلف حروف کوچک و بزرگ) در سلول A1 باشند، خروجی تابع OR مقداری صحیح (TRUE) است.
عملگرهای منطقی و مقادیر عددی
برای بررسی اینکه آیا مقدار سلول A1 خارج از بازه عددی بین 1000 تا 5000 هست یا نه، میتوانید از فرمول زیر استفاده کرد:
=OR(A1<1000,A1>5000)
در فرمول بالا، اگر مقدار سلول A1 کمتر از 1000 یا بیشتر از 5000 باشد، فرمول TRUE را برمیگرداند.
ترکیب OR با سایر توابع منطقی
تابع OR، میتواند با توابع شرطی دیگر (نظیر AND و IF) ترکیب شود و فرمولهای پیچیدهتری را بسازد. هدف ما از ترکیب OR با سایر توابع منطقی، ساخت مدلهای کاربردیتر است.
در اینجا تنها یک مثال از ترکیب تابع OR و IF میآوریم:
ترکیب OR و IF در کنترل کیفیت در کارخانه چای
فرض کنید در یک کارخانه تولید چای، برای هر بسته چای 900 گرمی، مقدار وزن آن در سلول A1 ثبت میشود. میخواهیم فرمولی بنویسیم که بررسی میکند آیا وزن بسته چای خارج از بازه عددی 880 تا 920 گرم است یا خیر.
اگر وزن بسته چای خارج از این بازه باشد، فرمول پیام "Not OK" را نمایش میدهد. در غیر این صورت، فرمول پیام "OK" را نمایش میدهد.
=IF(OR(A1<880,A1>920),"Not OK","OK")
فرمول بالا از دو تابع OR و IF تشکیل شده است.
ابتدا تابع OR دو شرط زیر را بررسی میکند:
- مقدار سلول A1 کمتر از 880 است (A1<880).
- مقدار سلول A1 بیشتر از 920 است (A1>920).
اگر حداقل یکی از این دو شرط برقرار باشد (وزن خارج از بازهی تعیین شده است)، تابع OR مقدار TRUE را برمیگرداند. در غیر این صورت، تابع OR مقدار FALSE را برمیگرداند.
حالا اگر تابع OR مقدار TRUE را برگردانده باشد (وزن خارج از بازه مورد نظر باشد)، بخش اول تابع IF معادل مقدار TRUE شده است و لذا، پیغام متناسب با آن در خروجی نوشته خواهد شد: "Not OK"
از طرفی اگر مقدار وزن چای، در بازه مورد نظر باشد، هیچ یک از ورودیهای تابع OR درست نیست و این تابع مقدار FALSE را به تابع IF میفرستد. بنابراین پیغام دوم از تابع IF یعنی "OK" در خروجی نهایی نوشته خواهد شد.
در اینجا چند مثال آورده شده است که نشان میدهد فرمول بالا چگونه عمل میکند:
- اگر مقدار سلول A1 برابر 879 باشد، تابع OR مقدار TRUE و کل فرمول بالا مقدار "Not OK" را برمیگرداند.
- اگر مقدار سلول A1 برابر 921 باشد، تابع OR مقدار TRUE و کل فرمول بالا مقدار "Not OK" را برمیگرداند.
- اگر مقدار سلول A1 برابر 900 باشد، تابع OR مقدار FALSE و کل فرمول بالا مقدار "OK" را برمیگرداند.
این فرمول میتواند برای کنترل کیفیت تولید چای استفاده شود. اگر وزن بسته چای خارج از بازه مجاز باشد، نشان میدهد که مشکلی در خط تولید وجود دارد و باید بررسی شود. البته در صنعت، کنترل کیفیت با فرمولهای پیچیدهتری تحلیل میشود و موضوع انطباق وزن بسته چای تنها بخش کوچکی از سیستم تضمین کیفیت کارخانه است.
جمعبندی
- ورودیهای تابع OR میتوانند عبارات ثابت منطقی، ارجاع به سلولها، آرایهها یا مقادیر ثابت عددی باشند.
- تابع OR یک تابع منطقی است که نتیجه این تابع TRUE است اگر حداقل یکی از مقادیر ورودی آن TRUE باشد، در غیر این صورت نتیجه آن FALSE است.
- میتوان تابع OR را با سایر توابع منطقی ترکیب کرد و مدلهایی است ساخت که پیچیدهتر هستند.