জানা দরকার
- IF ফাংশন একটি লজিক্যাল টেস্ট করার জন্য ব্যবহৃত হয়, অর্থাৎ কিছু সত্য কিনা তা যাচাই করা।
- IF ফাংশন সিনট্যাক্স ও আর্গুমেন্ট: =IF(logical_test, value_if_true, [value_if_false])।
- উদাহরণ: =IF(A2>A3,"Bigger","Smaller")।
এই আর্টিকেলটি ব্যাখ্যা করে কীভাবে IF ফাংশন ব্যবহার করে লজিক্যাল টেস্ট করতে হয় এক্সেলের সব সংস্করণে, এক্সেল ২০১৯ এবং মাইক্রোসফট ৩৬৫ সহ। এতে বেশ কিছু উদাহরণ দেওয়া আছে।
IF ফাংশন কী?
এক্সেলে IF ফাংশন একটি লজিক্যাল টেস্ট করার জন্য ব্যবহৃত হয়। এই ফাংশন ব্যবহার করা একটি ফর্মুলাকেও IF স্টেটমেন্ট বা if/then স্টেটমেন্ট বলা হয়।
এই ফাংশন ব্যবহার করা সকল ফর্মুলার দুটি ফলাফলের একটিই হতে পারে। এটি কীভাবে কাজ করে, নিচের উদাহরণগুলোর মাধ্যমে দেখব: ফর্মুলাটি সেট আপ করা হয় কিছু সত্য কিনা তা টেস্ট করতে। যদি সত্য হয়, একটি বিষয় ঘটে, কিন্তু যদি মিথ্যা হয়, অন্য কিছু ঘটে।
IF ফাংশন এক্সেলে ব্যবহার করা যাওয়া বেশ কিছু লজিক্যাল ফাংশনের একটি। অন্যান্য হলো AND, IFERROR, IFS, NOT, এবং OR।
IF ফাংশন সিনট্যাক্স ও আর্গুমেন্ট
IF ফাংশন ব্যবহার করা প্রতিটি ফর্মুলার কিছু অংশ থাকে:
=IF(logical_test, value_if_true, [value_if_false])
- logical_test: वह শর্ত যা আপনি টেস্ট করছেন। এটি বাধ্যতামূলক।
- value_if_true: logical_test সত্য হলে কী হবে। এটি বাধ্যতামূলক।
- value_if_false: logical_test মিথ্যা হলে কী হবে। এটি ঐচ্ছিক।
এক্সেল IF স্টেটমেন্ট লেখা সহজ যদি আপনি একটু ভিন্নভাবে পড়েন: যদি প্রথম অংশটি সত্য হয়, তবে এই কাজটি করো। যদি প্রথম অংশটি মিথ্যা হয়, তবে এই অন্য কাজটি করো।
এই নিয়মগুলো মনে রাখুন:
- logical_test মিথ্যা হলে এবং value_if_false বাদ দেওয়া থাকলে এক্সেল FALSE ফেরত দেবে।
- value_if_true বা value_if_false হিসেবে টেক্সট ফেরত দিতে হলে, এটি অবশ্যই উদ্ধৃতি চিহ্নের মধ্যে হতে হবে, TRUE এবং FALSE শব্দগুলো ছাড়া।
- IF ফাংশন কেস-সেনসিটিভ নয়।
- এক্সেল ২০১০ এবং নতুন সংস্করণে এক ফর্মুলার মধ্যে ৬৪টি IF স্টেটমেন্ট পর্যন্ত থাকতে পারে। পুরানো এক্সেল সংস্করণে সেটি সাতটি পর্যন্ত সীমাবদ্ধ।
IF ফাংশন উদাহরণ
এখানে এক্সেলে IF ফর্মুলা ব্যবহারের বিভিন্ন পদ্ধতি দেওয়া হলো:
স্টেটমেন্ট সত্য হলে টেক্সট লিখা
=IF(A2>A3,"Bigger","Smaller")
এটি এক্সেলে IF স্টেটমেন্টের একটি খুব বেসিক উদাহরণ। টেস্ট হলো দেখতে A2 কি A3-এর চেয়ে বড়। যদি হয়, Bigger লিখবে, অন্যথায় Smaller লিখবে।
স্টেটমেন্ট সত্য হলে গাণিতিক কাজ করা
=IF(A2>A3,A2-A3)
এই IF স্টেটমেন্ট কিছু ভিন্নভাবে লেখা হয়েছে। value_if_true ফলাফল হিসেবে শব্দ না দিয়ে, এটি একটি মান থেকে অন্য মান বিয়োগ করছে। সুতরাং, যদি A2 আসলে A3-এর চেয়ে বড় হয়, বিয়োগফল ফলাফল হবে। যদি সত্য না হয়, যেহেতু আমরা value_if_false অংশটি বাদ দিয়েছি, এক্সেল FALSE ফেরত দেবে।
গাণিতিক কাজ দিয়ে স্টেটমেন্ট টেস্ট করা
=IF(A2/A3=5,A2/A3,"")
IF স্টেটমেন্ট লেখার আরেকটি পদ্ধতি হলো logical_test সেকশনে গাণিতিক কাজ করা। এখানে IF শর্ত হলো A2/A3=5। যদি সেটি সত্য হয়, তবে আমরা ক্যালকুলেশন A2/A3 করব। যদি 5-এর সমান না হয়, আমরা ফলাফল খালি চাই, তাই ডবল কোট ব্যবহার করেছি।
একটি তারিখ আজ কিনা টেস্ট করা
=IF(A2=TODAY(),"This is today","")
অন্যান্য এক্সেল ফাংশন IF স্টেটমেন্টের মধ্যে ব্যবহার করা যায়। এই উদাহরণে, আমরা TODAY ফাংশন ব্যবহার করছি চেক করতে A2 আজকের তারিখ কিনা। যদি হয়, ফর্মুলা This is today লিখবে, অন্যথায় কিছু লিখবে না।
IF ফর্মুলার সাথে AND ব্যবহার করা
=IF(E2<=TODAY(),"Now","Soon")
=IF(AND(F2="Now",D2>=(B2-C2)),"Yes","No")
IF ফাংশনের এই উদাহরণটি কিছুটা জটিল। এখানে ধারণা হলো আমাদের যে আইটেমের টাকা বাকি সেটি পাস্ট ডিউ কিনা তা দেখা, এবং যদি হয়, সেটি আমাদের বাজেটে আছে কিনা তা যাচাই করা যাতে সেটি चुकाয়া যায়। যদি দুটি স্টেটমেন্টই সত্য হয়, কলাম G-এ দেখতে পাবেন चुकाয়ার সময় কিনা।
IF(E2<=TODAY(),"Now","Soon") হলো Urgency কলামে। এটি ডিউ ডেট আজকের তারিখের সাথে তুলনা করে আইটেমটি ওভারডিউ কিনা বা আজ ডিউ কিনা তা বলে। যদি ডিউ ডেট আজ বা অতীতে হয়, কলাম F-এ Now লিখবে, অন্যথায় Soon লিখবে।
দ্বিতীয় IF স্টেটমেন্টও IF স্টেটমেন্টের মতো স্ট্রাকচার্ড হলেও এতে AND ব্যবহার করা হয়েছে। বোল্ড অংশটি হলো যেখানে AND ফাংশনটি বসে, এবং যেহেতু এটি প্রথম কমার সেটের মধ্যে আছে, এটি logical_test হিসেবে ব্যবহার হচ্ছে:
=IF(AND(F2="Now",D2>=(B2-C2)),"Yes","No")
এটি ভিন্নভাবে লিখলে বোঝা যাবে এটি অন্য IF স্টেটমেন্টের মতোই:
=IF(এই AND ফাংশনটি টেস্ট করো, সত্য হলে Yes লিখো, মিথ্যা হলে No লিখো)
AND ফাংশনের ভিতরে দুটি IF স্টেটমেন্ট আছে:
- F2="Now" কলাম G-র ফর্মুলার অংশ। এটি চেক করে Now কি F2-এ আছে।
- D2>=(B2-C2)-এর দুটি অংশ: প্রথমে B2-C2 ক্যালকুলেশন করে বাকি কত টাকা দেনা আছে তা দেখে, তারপর D2-এ উপলব্ধ বাজেট চেক করে টাকা আছে কিনা।
সুতরাং, যদি আমাদের এখন টাকা দেনা থাকে, এবং আমাদের चुकाয়ার টাকা থাকে, আমাদের বলা হয় Yes, चुकाয়ার সময়।
নেস্টেড IF স্টেটমেন্ট উদাহরণ
নেস্টেড IF স্টেটমেন্ট বলতে বোঝায় যখন একটি ফর্মুলায় একাধিক IF স্টেটমেন্ট থাকে। সেটআপ почти একই, কিন্তু প্রথম সেটের শেষে বন্ধ পারেন্থেসিস না দিয়ে কমা দিয়ে আরেকটি স্টেটমেন্ট লেখা হয়।
এক্সেলে AND, OR, এবং IF ফাংশন নেস্ট করার পদ্ধতি শিখুন
এক ফর্মুলায় দুটি IF স্টেটমেন্ট
=IF(B2="F","Class A",IF(B2="M","Class B"))
এই প্রথম উদাহরণটি ছাত্রদের লিঙ্গ অনুযায়ী ক্যাটাগরাইজ করতে ব্যবহৃত হয়, যেখানে মেয়েদের Class A এবং ছেলেদের Class B আসাইন করা হয়। ফর্মুলা B2-এ F এবং M চেক করে এবং সত্য হওয়া স্টেটমেন্ট অনুযায়ী Class A বা Class B লিখে।
নেস্টেড IF ফাংশন থাকা ফর্মুলার শেষে যেই সংখ্যক বন্ধ পারেন্থেসিস দরকার সেটি IF কতবার লেখা হয়েছে তার সমান। আমাদের উদাহরণে IF দুবার লেখা হয়েছে, তাই শেষে দুটি বন্ধ পারেন্থেসিস দরকার।
এক ফর্মুলায় তিনটি IF স্টেটমেন্ট
=IF(A2=TODAY(),"This is today",IF(A2TODAY(),"Future date")))
এখানে একাধিক IF স্টেটমেন্ট থাকা একটি ফর্মুলার উদাহরণ। এটি উপরের TODAY উদাহরণের মতোই কিন্তু একটু বেশি লজিক্যাল টেস্ট সহ:
- প্রথম সেট চেক করে A2 আজকের তারিখ কিনা এবং হলে This is today ফেরত দেয়।
- দ্বিতীয়টি টেস্ট করে আজ কি A2-এর চেয়ে বড় যাতে A2 পুরনো তারিখ কিনা তা জানা যায়, এবং হলে Old date ফেরত দেয়।
- শেষে, আজকের তারিখ কি A2-এ থাকা তারিখ থেকে ছোট কিনা তা টেস্ট করে, এবং হলে Future date ফেরত দেয়।
স্টেটমেন্ট মিথ্যা হলে প্রাইস কপি করা
=IF(C2="Bill","",IF(C2="Food","",B2))
এই চরম নেস্টেড IF ফর্মুলার উদাহরণে, আমাদের দ্রুত শনাক্ত করতে হবে সেই সকল কেনাকাটার মোট পরিমাণ যেগুলো নির্দিষ্ট ক্যাটেগরির অধীন পড়ে না। আমরা আমাদের অনাবশ্যক কেনাকাটার মোট বের করছি, এবং দীর্ঘ তালিকা থাকলে এটি সেরা পদ্ধতি। আমরা নির্ধারণ করেছি যে যেকোনো আইটেমের বিবরণে Bill বা Food বলা থাকলে সেটি গুরুত্বপূর্ণ, তাই দাম, B2-এ, অন্যান্য সব আইটেমের জন্য দেখাতে হবে।
এখানে যা হচ্ছে:
- C2="Bill","": যদি C2 বলে Bill, কোষ খালি রাখুন।
- C2="Food","": যদি C2 বলে Food, কোষ খালি রাখুন।
- B2: যদি উপরের দুটি স্টেটমেন্টই মিথ্যা হয়, B2-এ যা আছে সেটি লিখুন।
এই ফর্মুলা আমাদের দেয় দামের একটি তালিকা যাকে আমরা পরে SUM ফাংশন দিয়ে মোট করি যাতে দ্রুত বুঝতে পারি কত টাকা অপ্রয়োজনীয় আইটেমে খরচ হয়েছে।
নেস্টেড IF স্টেটমেন্ট লেখার সহজ পদ্ধতি
ফর্মুলায় যত বেশি কিছু যোগ করবেন, তা তত দ্রুত অপরিচালনাযোগ্য এবং পরে এডিট করা কঠিন হয়ে যায়। নেস্টেড IF স্টেটমেন্ট সহজ बनाने একটি পদ্ধতি হলো প্রতিটি স্টেটমেন্টের পরে লাইন ব্রেক দেয়া, এইভাবে:
=
IF(A2=TODAY(),"This is today",
IF(A2TODAY(),"Future date")))
এক্সেলে এটি করতে হলে ফর্মুলা বারে থেকে এডিট করতে হয়:
-
এক্সেলের উপরে ফর্মুলা বার নির্বাচন করুন।
-
টেক্সট স্পেসের নিচে মাউস রাখুন যতক্ষণ না কার্সর ডাবল-সাইডেড অ্যারোতে পরিবর্তিত হয়, তারপর ক্লিক করে ড্র্যাগ করে নিচে টানুন বেশি ওয়ার্কিং স্পেস পাওয়ার জন্য।
-
ইকুয়াল সাইন (=)-এর পর কার্সর রাখুন এবং Alt+Enter (Windows) বা Ctrl+Option+Enter (Mac) চাপুন। এটি ফর্মুলার বাকি অংশকে নতুন লাইনে নিয়ে যাবে।
-
প্রতিটি IF স্টেটমেন্টের আগে ধাপ ৩ পুনরাবৃত্তি করুন যাতে প্রতিটি উদাহরণ নিজের লাইনে থাকে।