تابع SWITCH
یک مقدار را با چند حالت مقایسه میکند و نتیجهی اولین حالتی را که برابر باشد برمیگرداند
ساختار تابع
=SWITCH(expression, value1, result1, [value2, result2], ..., [default])
برای مشاهده توضیح هر ورودی، نشانگر ماوس را روی نام آن نگه دارید.
توضیح کامل
تابع SWITCH یک مقدار را میگیرد و آن را به ترتیب با چند مقدار مقایسه میکند. به اولین مقداری که برابر باشد برسد، نتیجهی همان را برمیگرداند. اگر هیچکدام برابر نبود، مقدار پیشفرض (آخرین ورودی) برگردانده میشود. این تابع جایگزین مرتبتری برای IF های تودرتو است.
مثال: تبدیل کد به نام واحد
=SWITCH(A2, 1, "فروش", 2, "مالی", 3, "انبار", "نامشخص")
مثال: نام روز هفته از روی تاریخ
=SWITCH(WEEKDAY(A2), 7, "شنبه", 6, "جمعه", "وسط هفته")
مشخصات فنی
ویژگیهای فنی و سازگاری تابع
▣
دستهبندی اکسلی
منطقی
◷
اولین نسخه
Excel 2019
↦
نوع خروجی
ترکیبی
ϟ
Volatile
خیر
⌗
Dynamic Array
خیر
★
محبوبیت
۵۵ از ۱۰۰
ورودیهای تابع
| نام ورودی | نوع | وضعیت | توضیح |
|---|---|---|---|
expression
|
هر نوع | الزامی | مقداری که باید بررسی شود |
value1
|
هر نوع | الزامی | حالت اول |
result1
|
هر نوع | الزامی | نتیجه در صورت برابر بودن با حالت اول |
value2
|
هر نوع | اختیاری، تکرارشونده | حالتهای بعدی |
result2
|
هر نوع | اختیاری، تکرارشونده | نتیجهی حالتهای بعدی |
default
|
هر نوع | اختیاری | اگر هیچ حالتی برابر نبود؟ |
یک مقدار را با چند حالت مقایسه میکند و نتیجهی اولین حالتی را که برابر باشد برمیگرداند
کاربردهای تابع
✓
جایگزین IF تودرتو
نوشتن چند حالت پشت سر هم بدون پرانتزهای تودرتو
✓
تبدیل کد به عنوان
برگرداندن نام واحد، وضعیت یا گروه از روی کد
✓
دستهبندی دادهها
تعیین گروه هر ردیف بر اساس مقدار یک ستون
خطاهای رایج و راهحل
#N/A
هیچ حالتی برابر نبوده و مقدار پیشفرض هم نوشته نشده است
راهحل: اضافه کردن مقدار پیشفرض در انتهای فرمول
#NAME?
نسخه اکسل قدیمیتر از Excel 2019 است
راهحل: استفاده از IF تودرتو در نسخههای قدیمی
نکات مهم
- فقط برابری را بررسی میکند؛ شرطهایی مثل بزرگتر و کوچکتر را مستقیم قبول نمیکند.
- برای شرطهای بزرگتر و کوچکتر، ورودی اول را TRUE بنویسید و شرطها را جای مقدارها بگذارید.
- اگر مقدار پیشفرض نوشته نشود و هیچ حالتی برابر نباشد، خطای #N/A میدهد.
- به بزرگی و کوچکی حروف حساس نیست.
توضیحات بیشتر
مقدار اول فقط یک بار نوشته میشود و لازم نیست مثل IF در هر شرط تکرار شود. تا 126 جفت مقدار و نتیجه قابل تعریف است.
