تابع true در اکسل
تابع TRUE در اکسل یکی از توابع منطقی ساده ولی پرکاربرد است که مقدار منطقی صحیح را برمیگرداند. در بسیاری از فرمولها و ترکیبهای منطقی، دانستن رفتار دقیق این تابع و تفاوت آن با مقدار متنی “TRUE” اهمیت زیادی دارد. در این مقاله به شکل کاربردی و دقیق به تعریف، مثالها، ترفندها و نکات پیشرفته پیرامون تابع TRUE میپردازیم.
تعریف و ساختار
تابع TRUE یا مقدار ثابت TRUE مقدار منطقی صحیح (Boolean) را برمیگرداند. این تابع هیچ آرگومانی ندارد و به دو شکل قابل استفاده است:
- بهصورت تابع: TRUE()
- یا بهعنوان مقدار ثابت در فرمول: TRUE
هر دو برابرند و مقدار منطقی TRUE را تولید میکنند که در محاسبات عددی به 1 و در ترکیبهای منطقی به معنای درست است.
نمونههای ساده
=TRUE()
=TRUE
هر دو فرمول فوق مقدار منطقی TRUE را بازمیگردانند. در اکسل، معمولاً استفاده از مقدار ثابت TRUE رایجتر و خواناتر است.
مثالهای کاربردی
در ادامه نمونههایی از استفاده تابع TRUE در ترکیب با توابع دیگر میآوریم:
=IF(TRUE, "Yes", "No")
این فرمول همیشه “Yes” را برمیگرداند چون شرط برابر با TRUE است. نکته: اگر در فرمول از ساختار =IF(condition, TRUE, FALSE) استفاده میکنید، بهجای آن میتوانید مستقیماً =condition را بنویسید (زیرا شرط خودش مقدار TRUE یا FALSE تولید میکند).
=A1="Apple"
این فرمول در صورتی که مقدار سلول A1 برابر “Apple” باشد، مقدار منطقی TRUE میدهد؛ در غیر این صورت FALSE. توجه داشته باشید که این مقدار مستقیماً قابل استفاده در توابع منطقی دیگر است.
تبدیل TRUE به عدد و بالعکس
در اکسل، مقدار منطقی TRUE در محاسبات عددی به 1 و FALSE به 0 تبدیل میشود. راههای معمول برای تبدیل:
- استفاده مستقیم در جمع:
=SUM(A1, TRUE)(اگر A1 عددی باشد، TRUE معادل 1 لحاظ میشود) - تابع N:
=N(TRUE)مقدار 1 را برمیگرداند. - دو یونری (double unary):
=--(A1="Yes")که برای تبدیل آرایههای منطقی به 0/1 بسیار کاربردیست.
=N(TRUE)
=--(A1="Yes")
=SUMPRODUCT(--(A1:A10="Yes"))
مثال بالا: N(TRUE) مقدار 1 برمیگرداند. --(A1="Yes") در صورتی که A1 برابر “Yes” باشد مقدار 1 و در غیر این صورت 0 میسازد. SUMPRODUCT(--(A1:A10="Yes")) تعداد خانههایی که برابر “Yes” هستند را میشمارد (روش امن و سریع برای شمارش با تبدیل منطقی به عدد).
نکات بهینهسازی و بهترین روشها
- بهجای نوشتن
=IF(condition, TRUE, FALSE)از=conditionاستفاده کنید؛ سادهتر و سریعتر است. - برای شمارش یا جمع روی نتایج منطقی از
SUMPRODUCT(--(range=criteria))یاSUM(--(range=criteria))(در فرمولهای آرایهای) استفاده کنید تا از تبدیل صریح به عدد مطمئن شوید. - برای مقایسه با مقدار TRUE از علامت نقلقول استفاده نکنید. “TRUE” بهعنوان متن محسوب میشود و با مقدار منطقی متفاوت است.
نمونه جدول: ورودی و نتیجه
| فرمول | نتیجه | توضیح |
|---|---|---|
=TRUE() | TRUE | مقدار منطقی درست |
=A1="Test" | TRUE / FALSE | مقایسه مستقیم رشته |
=N(TRUE) | 1 | تبدیل به عدد |
=SUMPRODUCT(--(B1:B5=100)) | تعداد | شمارش مقادیر برابر 100 با تبدیل منطقی به عدد |
موارد خاص و نکات احتیاطی
- در فایلهای وارد شده از CSV یا منابع خارجی ممکن است متن “TRUE” بهصورت رشته وارد شود. در این حالت باید آن را به مقدار منطقی تبدیل کنید، مثلاً با
=IF(A1="TRUE", TRUE, FALSE)یا=--(A1="TRUE")(در صورتی که A1 دقیقا متن “TRUE” باشد). - در برخی توابع (مانند COUNTIF) رفتار با مقدارهای منطقی ممکن است گیجکننده باشد؛ بهطور عمومی برای شمارش مقادیر منطقی بهتر است از
SUMPRODUCTیا تبدیل صریح استفاده کنید تا از ناسازگاری جلوگیری شود. - تابع TRUE بهخودیخود اطلاعاتی مانند زمان یا متن ندارد و فقط یک مقدار منطقی ساده فراهم میکند؛ کاربرد اصلی آن در ترکیب با فرمولهای شرطی، فیلترها، و محاسبات آرایهای است.
چند مثال کاربردی دیگر
=IF(A1>B1, TRUE, FALSE) /* بهتر است =A1>B1 نوشته شود */=SUM(--(C1:C100)) /* شمارش خانههای غیرصفر با تبدیل منطقی */=OR(A1>10, B1<5, TRUE) /* اگر یکی درست باشد OR مقدار TRUE برمیگرداند */در مثال اول، بهینهسازی پیشنهادی این است که مستقیماً شرط را برگردانید. در مثال دوم از تبدیل منطقی برای شمارش استفاده شده و در مثال سوم، OR چون شامل TRUE است، همیشه TRUE را بازمیگرداند (پس دقت کنید چرا TRUE را به آرگومانهای OR اضافه میکنید).
جمعبندی
تابع TRUE در اکسل ساده ولی پرکاربرد است. رفتار آن در ترکیب با عملیات عددی (تبدیل به 1)، مقایسهها، و توابع آرایهای باعث میشود که در تحلیل دادهها و ساخت فرمولهای پیچیده ابزاری ضروری باشد. مهمترین نکتهها: از مقدار ثابت TRUE بهصورت خوانا استفاده کنید، از تبدیلهای صریح برای محاسبات عددی بهره ببرید، و در هنگام وارد کردن داده از منابع خارجی مراقب تبدیل متن “TRUE” به مقدار منطقی باشید.
آیا این مطلب برای شما مفید بود ؟




