এই পর্বে যা শিখবেন
- workbook, worksheet, সেল, সারি, কলাম, রেঞ্জ আর সেলের ঠিকানা পড়া ও লেখা
- সংখ্যা, লেখা, তারিখ আর টাকার ফরম্যাট — ফোন নম্বরের শুরুর ০ কেন হারায় আর কীভাবে রাখবেন
- সূত্র, অপারেটরের ক্রম, relative, absolute আর mixed reference — কপি করলে কী বদলায়
- SUM থেকে nested IF, SUMIF, তারিখ ও লেখার ফাংশন — রেজাল্ট শিট, পারিবারিক বাজেট, দোকানের খাতা আর বিদ্যুৎ বিলের উদাহরণে
- এরর সারানো, sort, filter, freeze, প্রিন্ট, Excel বনাম Google Sheets, CSV আর বাংলা — এবং AI দিয়ে সূত্র লেখানোর পর যাচাইয়ের নিয়ম
১ · স্প্রেডশিট কী — জীবন্ত হিসাবের খাতা
পাড়ার মুদি দোকানের করিম চাচার কথা ভাবুন। প্রতিদিন রাতে তিনি লাল মলাটের খাতায় হিসাব লেখেন — কোন জিনিস কতটা বিক্রি হলো, দাম কত, দিনের মোট কত। একদিন খেয়াল করলেন, সকালে চালের দাম ভুল লিখেছিলেন। এখন সেই লাইনের মোট, পাতার মোট, আর মাসের মোট — তিন জায়গায় কেটে আবার যোগ করতে হবে। একটি সংখ্যার ভুল, আধা ঘণ্টার কাজ।
এখন ভাবুন এমন একটি খাতা, যেখানে আপনি শুধু লিখে রাখেন “এই ঘরের মান = দাম × পরিমাণ”, “পাতার মোট = ওপরের সব ঘরের যোগফল”। দাম বদলালেই খাতা নিজে থেকে সব মোট নতুন করে হিসাব করে ফেলে। এই খাতাই স্প্রেডশিট (spreadsheet). Microsoft Excel আর Google Sheets এর সবচেয়ে পরিচিত দুটি প্রোগ্রাম; বিনা মূল্যের LibreOffice Calc-ও একই কাজ করে।
স্প্রেডশিট হলো ঘরের একটি জাল (grid). কিছু ঘরে থাকে ডেটা (সংখ্যা, নাম, তারিখ), আর কিছু ঘরে থাকে সূত্র — যা অন্য ঘরের মান নিয়ে হিসাব করে। একটি ঘরের মান বদলালে যত ঘর তার ওপর নির্ভর করে, সবগুলো সাথে সাথে নতুন করে হিসাব হয়। এই “জীবন্ত হিসাব”-এর কারণেই দোকান, অফিস, স্কুল, ব্যাংক, NGO — প্রায় সবখানে স্প্রেডশিট চলে।
খাতার ভাষা — workbook, worksheet, সেল
Excel-এর একটি ফাইলকে বলে workbook (বই) — এক্সটেনশন সাধারণত .xlsx. একটি বইয়ের ভেতরে থাকে এক বা একাধিক worksheet (পাতা) — নিচের দিকে ট্যাবে নাম দেখা যায়: Sheet1, Sheet2… একটি পাতা দেখতে ছকের মতো। ওপর থেকে নিচে যায় কলাম (column), নাম অক্ষরে: A, B, C … Z, তারপর AA, AB … । বাঁ থেকে ডানে যায় সারি (row), নাম সংখ্যায়: 1, 2, 3 … । একটি কলাম আর একটি সারি যেখানে মেলে, সেই ছোট্ট ঘরটিই সেল (cell).
সিনেমা হলের টিকিট মনে করুন — “সারি F, আসন ১২”। হলে ঢুকে আপনি ঠিক সেই আসনে যান, অন্য কোথাও নয়। স্প্রেডশিটেও প্রতিটি ঘরের এমন একটি নির্দিষ্ট “আসন নম্বর” আছে। পার্থক্য শুধু একটি — এখানে আগে কলামের অক্ষর, পরে সারির নম্বর।
এই আসন নম্বরকে বলে সেলের ঠিকানা (cell address বা cell reference). কলাম B আর সারি 3 মিললে ঠিকানা B3. পাশাপাশি কয়েকটি ঘর একসাথে বোঝাতে লেখা হয় প্রথম আর শেষ ঘরের ঠিকানা, মাঝে কোলন — একে বলে রেঞ্জ (range). B3:D10 মানে B3 থেকে D10 পর্যন্ত আয়তাকার এলাকার সব ঘর — ৩টি কলাম × ৮টি সারি = ২৪টি ঘর।
একটি ছোট্ট worksheet — কলাম, সারি, সেল আর রেঞ্জ
সবুজ ঘরগুলো রেঞ্জ B2:C4; D কলামের ঘরে লেখা আছে সূত্র, দেখা যাচ্ছে ফল
| A | B | C | D | |
|---|---|---|---|---|
| 1 | পণ্য | পরিমাণ | দর (৳) | মোট (৳) |
| 2 | চাল (কেজি) | 20 | 70 | 1400 =B2*C2 |
| 3 | ডাল (কেজি) | 5 | 110 | 550 =B3*C3 |
| 4 | তেল (লিটার) | 4 | 190 | 760 =B4*C4 |
| 5 | দিনের মোট | 2710 =SUM(D2:D4) |
=B2*C2).যে ঘরটি এখন বাছাই করা আছে (চারপাশে মোটা সবুজ দাগ), তাকে বলে active cell. তার ঠিকানা দেখা যায় বাঁ দিকের ওপরের Name Box-এ, আর ভেতরের লেখা বা সূত্র দেখা যায় পাশের লম্বা formula bar-এ। মনে রাখুন — ঘরে যা দেখছেন, আর ঘরে আসলে যা আছে, সবসময় এক নয়।
একটি পাতা কত বড়? Excel 2007 থেকে একটি worksheet-এ ১০,৪৮,৫৭৬টি সারি আর ১৬,৩৮৪টি কলাম থাকতে পারে — শেষ কলামের নাম XFD. তার আগের .xls ফরম্যাটে সারি ছিল মাত্র ৬৫,৫৩৬টি। এই সীমা কেন গুরুত্বপূর্ণ, ভাবনার প্রশ্নে একটি সত্যি ঘটনায় দেখবেন।
২ · ডেটা ঢোকানো — সংখ্যা, লেখা, তারিখ আর ফরম্যাট
একটি ঘরে ক্লিক করে টাইপ করুন, তারপর Enter (নিচের ঘরে যাবে) বা Tab (ডানের ঘরে যাবে)। ভুল হলে ঘরে দাঁড়িয়ে F2 চাপুন বা ডাবল-ক্লিক করুন — ভেতরের লেখা সম্পাদনা করা যাবে। শুধু টাইপ শুরু করলে আগের লেখা পুরোটাই মুছে নতুন বসে; Esc চাপলে সম্পাদনা বাতিল। Delete ঘর খালি করে, কিন্তু ঘরের ফরম্যাট রেখে দেয়।
প্রতিটি ঘরের একটি “ধরন” আছে
আপনি যা টাইপ করেন, স্প্রেডশিট নিজে অনুমান করে সেটি কী ধরনের ডেটা. এই অনুমান বেশিরভাগ সময় ঠিক হয়, কিন্তু যখন ভুল হয় — তখনই ঝামেলা।
| ধরন | উদাহরণ | কীভাবে চিনবেন | হিসাবে কাজে লাগে? |
|---|---|---|---|
| সংখ্যা (Number) | 1500, 72.5 | ঘরের ডান দিকে সাজানো থাকে | হ্যাঁ |
| লেখা (Text) | চাল, Rahim | বাঁ দিকে সাজানো থাকে | না — যোগ-গুণ করা যায় না |
| তারিখ (Date) | 15/10/2026 | ডানে; ভেতরে আসলে একটি সংখ্যা | হ্যাঁ — দুই তারিখের ব্যবধান বের করা যায় |
| টাকা (Currency) | ৳ 1,500.00 | সংখ্যাই, শুধু চেহারা আলাদা | হ্যাঁ |
| শতাংশ (Percentage) | 15% | ভেতরে থাকে 0.15 | হ্যাঁ |
| সত্য/মিথ্যা (Boolean) | TRUE, FALSE | মাঝে সাজানো | শর্তে কাজে লাগে |
ফোন নম্বরের শুরুর ০ হারিয়ে যায় কেন? একটি ঘরে 01712345678 লিখে Enter চাপুন — দেখবেন হয়ে গেছে 1712345678. স্প্রেডশিট ভেবেছে এটি একটি সংখ্যা, আর সংখ্যার শুরুতে শূন্যের কোনো মূল্য নেই। কিন্তু ফোন নম্বর, রোল নম্বর, পোস্ট কোড, NID নম্বর — এগুলো দিয়ে কেউ যোগ-বিয়োগ করে না; এরা আসলে লেখা, যদিও দেখতে সংখ্যার মতো। দুটি সমাধান: (১) টাইপের আগে কলামটি বাছাই করে ফরম্যাট Text করুন (Home → Number-এর তালিকা → Text); (২) একটি-দুটি ঘরে শুরুতে একটি apostrophe দিন: '01712345678 — চিহ্নটি ঘরে দেখা যায় না, শুধু বলে দেয় “এটি লেখা”। আরেকটি ফাঁদ: Excel সংখ্যার মাত্র ১৫টি অঙ্ক মনে রাখে। ১৭ অঙ্কের NID বা লম্বা ব্যাংক অ্যাকাউন্ট নম্বর সংখ্যা হিসেবে ঢোকালে শেষের অঙ্কগুলো চুপচাপ ০ হয়ে যায় — আর ফেরানো যায় না। এমন নম্বর সবসময় Text হিসেবে রাখুন।
AutoFill — টেনে আনলেই সিরিজ
বাছাই করা ঘরের নিচে-ডান কোণে একটি ছোট্ট বর্গ থাকে — fill handle. এটি ধরে নিচে বা ডানে টানলে AutoFill কাজ করে:
Januaryলিখে টানুন → February, March … নিজে থেকেই আসবে।Satলিখে টানলে Sun, Mon …1আর2দুটি ঘরে লিখে দুটোই বাছাই করে টানুন → 3, 4, 5 … (শুধু1লিখে টানলে সব ঘরে 1 আসে — Excel ধাপ বুঝতে দুটি উদাহরণ চায়)। রোল নম্বর বসানোর সবচেয়ে দ্রুত উপায়।- সূত্র লেখা ঘর টানলে সূত্রটি কপি হয়, আর ঠিকানাগুলো সারি অনুযায়ী বদলে যায় — এটিই এই পর্বের সবচেয়ে গুরুত্বপূর্ণ কৌশল (অংশ ৪)। পাশের কলামে ডেটা থাকলে fill handle-এ ডাবল-ক্লিক করলে ডেটার শেষ সারি পর্যন্ত একবারে ভরে যায়।
Number format — একই সংখ্যা, আলাদা চেহারা
একটি ঘরের number format শুধু ঠিক করে সংখ্যাটি দেখতে কেমন হবে; ভেতরের মান বদলায় না। ঘর বাছাই করে Ctrl+1 চাপলে Format Cells বাক্স খোলে (Google Sheets-এ: Format → Number).
| ভেতরের মান | ফরম্যাট | ঘরে যা দেখবেন |
|---|---|---|
1500 | Number, ২ দশমিক, হাজারের কমা | 1,500.00 |
1500 | Custom: "৳ "#,##0 বা "Tk "#,##0 | ৳ 1,500 / Tk 1,500 |
0.15 | Percentage | 15% |
46310 (একটি তারিখ) | Custom: dd/mm/yyyy | 15/10/2026 |
2.6666… | Number, ১ দশমিক | 2.7 — কিন্তু হিসাবে যায় পুরো 2.6666… |
- তারিখ বাংলাদেশি ঢঙে: আমরা লিখি দিন/মাস/বছর। কিন্তু কম্পিউটারের Windows-এর অঞ্চল (Region) যদি United States থাকে,
05/03/2026লিখলে Excel পড়বে “৩ মে”! তারিখ লেখার আগে Windows Settings → Time & language → Language & region-এ অঞ্চল ঠিক আছে কি না দেখুন, অথবা5-Mar-2026-এর মতো দ্ব্যর্থহীন রূপে লিখুন, তারপর ফরম্যাট দিনdd/mm/yyyy. আজকের তারিখ এক চাপে: Ctrl+;. - শতাংশ: ঘরে সরাসরি
15%লিখলে ভেতরে বসে0.15— হিসাবে সেটিই সঠিক। কিন্তু আগে15লিখে পরে % ফরম্যাট দিলে দেখাবে1500%. - দশমিক ঘর: Home ট্যাবের Increase/Decrease Decimal বোতাম শুধু চেহারা বদলায়। হিসাবেও গোল করতে চাইলে
ROUNDফাংশন লাগবে (অংশ ৫)।
৩ · সূত্র — = চিহ্ন, অপারেটর আর হিসাবের ক্রম
স্প্রেডশিটের আসল শক্তি সূত্র (formula). নিয়ম একটাই — সূত্র শুরু হয় সমান চিহ্ন = দিয়ে। = না দিলে B2*C2 শুধু একটি লেখা; = দিলে এটি একটি নির্দেশ: “B2-এর মানকে C2-এর মান দিয়ে গুণ করো, আর ফলটি এখানে দেখাও।”
| চিহ্ন | কাজ | উদাহরণ | ফল (B2 = 10, C2 = 4 ধরে) |
|---|---|---|---|
+ | যোগ | =B2+C2 | 14 |
- | বিয়োগ | =B2-C2 | 6 |
* | গুণ (× নয়!) | =B2*C2 | 40 |
/ | ভাগ (÷ নয়!) | =B2/C2 | 2.5 |
^ | ঘাত (power) | =C2^2 | 16 |
& | লেখা জোড়া লাগানো | =B2&" টাকা" | 10 টাকা |
= > < >= <= <> | তুলনা (ফল TRUE/FALSE) | =B2>C2 | TRUE |
কোনটা আগে — অপারেটরের ক্রম
স্কুলের অঙ্কের “BODMAS” নিয়ম মনে আছে? স্প্রেডশিটও একই ধরনের অপারেটরের অগ্রাধিকার মানে: আগে বন্ধনী, তারপর ঘাত (^), তারপর গুণ-ভাগ, তারপর যোগ-বিয়োগ, তারপর &, সবশেষে তুলনা। একই স্তরের অপারেটর বাঁ থেকে ডানে।
=10+20/5*2→ আগে20/5= 4, তারপর4*2= 8, শেষে10+8= 18.=(10+20)/5*2→30/5= 6,6*2= 12.- একটি ক্লাসিক ভুল: তিন বিষয়ের গড় লিখতে গিয়ে
=B2+C2+D2/3— এখানে শুধু D2 তিন দিয়ে ভাগ হয়! ঠিক রূপ=(B2+C2+D2)/3, অথবা আরও ভালো=AVERAGE(B2:D2).
সূত্রে সংখ্যা সরাসরি না লিখে ঘরের ঠিকানা লেখাই নিয়ম। =20*70 লিখলেও 1400 আসবে, কিন্তু দাম বদলালে সূত্রও হাতে বদলাতে হবে। =B2*C2 লিখলে দাম বদলানো মাত্র ফল বদলায় — এটাই স্বয়ংক্রিয় পুনর্হিসাব (recalculation). নিচে দেখুন একটি দাম বদলালে ঢেউটা কতদূর যায়। “পরে” চাপুন:
- দর
C2চালের কেজিপ্রতি দাম - লাইনের মোট
D2 =B2*C2পরিমাণ × দর - দিনের মোট
D8 =SUM(D2:D7)সব লাইনের যোগ - মাসের মোট
আরেক শিটেপ্রতিদিনের মোটের যোগ
| C2 · চালের দর | |
| D2 · চালের মোট | |
| D8 · দিনের মোট | |
| মাসের মোট |
- শুরু। দোকানের খাতায় আজ ৬টি লাইন। চাল বিক্রি হয়েছে ২০ কেজি, দর ৭০ টাকা — তাই D2 = 1400. সব লাইনের যোগে দিনের মোট 4450, আর মাসের শিটে এ পর্যন্ত 1,24,450 টাকা।
- দর বদলালেন। করিম চাচা মনে করলেন, আজ চাল আসলে ৭৫ টাকায় বিক্রি হয়েছে। C2-এ লিখলেন 75. আপনার কাজ এখানেই শেষ — বাকিটা স্প্রেডশিটের।
- প্রথম ঢেউ। D2-এর সূত্র
=B2*C2C2-এর ওপর নির্ভর করে, তাই সে নতুন করে হিসাব করে: 20 × 75 = 1500. - দ্বিতীয় ঢেউ। D8-এর
=SUM(D2:D7)D2-এর ওপর নির্ভর করে — দিনের মোট 4450 থেকে 4550. - তৃতীয় ঢেউ। মাসের শিট দিনের মোট নেয় এই শিট থেকে, তাই সেটিও বদলে 1,24,550. খাতায় যে কাজে আধা ঘণ্টা লাগত, এখানে চোখের পলকে।
- Excel জানে কে কার ওপর নির্ভর করে। ভেতরে Excel একটি “নির্ভরতার তালিকা” (dependency graph) রাখে, তাই শুধু যেসব ঘর প্রভাবিত, সেগুলোই আবার হিসাব করে। আপনিও এই শিকল দেখতে পারেন: ঘর বাছাই করে Formulas → Trace Precedents (এই ঘর কাদের ওপর নির্ভর করে) বা Trace Dependents (কারা এর ওপর নির্ভর করে) — পর্দায় তীর আঁকা হয়ে যায়।
Circular reference — নিজের লেজ নিজে কামড়ানো। A1-এর সূত্র যদি B1-এর ওপর, আর B1-এর সূত্র A1-এর ওপর নির্ভর করে, তাহলে কাকে আগে হিসাব করবে? এর কোনো শেষ নেই। একে বলে circular reference; Excel সতর্কবার্তা দেখায় আর নিচের status bar-এ ঘরের ঠিকানা জানায়। সবচেয়ে সাধারণ কারণ — মোটের সূত্রের রেঞ্জে মোটের ঘরটিও ঢুকে যাওয়া, যেমন D8-এ =SUM(D2:D8).
৪ · সেল রেফারেন্স — relative, absolute আর mixed
১০০টি পণ্যের দাম আছে, প্রতিটির ওপর VAT হিসাব করতে হবে। ১০০ বার সূত্র লিখবেন? না — একবার লিখে নিচে টেনে দেবেন। কিন্তু টানার সময় সূত্রের ভেতরের ঠিকানা কীভাবে বদলায়, সেটি না বুঝলে ১০০টির মধ্যে ৯৯টি ভুল হবে। এখানেই আসে তিন রকম রেফারেন্স।
- Relative reference (
B2): কপি করলে ঠিকানা সরে যায়। আসলে Excel মনে রাখে “আমার বাঁ দিকের ঘর”, “আমার ওপরের সারির ঘর” — তাই সূত্র এক সারি নিচে নিলে ঠিকানাও এক সারি নিচে নামে। - Absolute reference (
$F$1):$চিহ্ন মানে “এটি আটকানো”। যেখানেই কপি করুন, ঠিকানা থাকবেF1. - Mixed reference (
$F1বাF$1): শুধু একটি অংশ আটকানো —$F1-এ কলাম আটকানো, সারি সরে;F$1-এ সারি আটকানো, কলাম সরে।
ধরুন আপনি নতুন অফিসে সহকর্মীকে বললেন, “আমার দুই টেবিল বাঁয়ে যিনি বসেন, তাঁর কাছ থেকে ফাইল নিন।” আপনি অন্য টেবিলে বসলে কথাটার মানে বদলে যায় — এটি relative. আর বললেন, “ম্যানেজারের রুম, ৩ তলা, রুম ৩০৫” — আপনি যেখানেই বসুন, ঠিকানা একই — এটি absolute.
এবার “VAT-এর হার এক ঘরে” — অফিসের সবচেয়ে পরিচিত উদাহরণ। F1 ঘরে আছে হার 15%; B কলামে পণ্যের দাম; C কলামে VAT. C2-তে সূত্র লিখে নিচে কপি করা হচ্ছে:
| সারি | B · দাম | C · সূত্র | C · ফল |
|---|---|---|---|
| 2 | 100 | | |
| 3 | 250 | | |
| 4 | 480 | |
| F1 · VAT হার | 15% |
| F2, F3 | (খালি) |
- প্রথম সূত্র। C2-তে লিখলেন
=B2*$F$1: “বাঁয়ের দাম × VAT-এর হার”। 100 × 15% = 15. দাম relative (B2), হার absolute ($F$1). - এক সারি নিচে কপি। fill handle টেনে C3-এ আনলেন।
B2এক সারি নেমে হলোB3— ঠিক যা চাই। কিন্তু$F$1নড়েনি, কারণ$দিয়ে আটকানো। 250 × 15% = 37.5. - আরও এক সারি। C4-এ
=B4*$F$1→ 480 × 15% = 72. ১০০টি সারি হলেও একই নিয়ম — একবার লিখে টেনে দিলেই শেষ। - যদি
$ভুলে যেতেন? C2-তে=B2*F1লিখে কপি করলে F1-ও সারির সাথে নামতে থাকে: C3-এF2, C4-এF3. ওই ঘরগুলো খালি, আর খালি ঘর হিসাবে 0 — তাই VAT হলো 0! কোনো এরর বার্তাও আসে না। এই নিঃশব্দ ভুলই সবচেয়ে বিপজ্জনক। - সারানোর সহজ উপায় — F4. সূত্র লেখার সময়
F1-এর ওপর কার্সর রেখে F4 চাপুন:F1→$F$1→F$1→$F1→ আবারF1. (ল্যাপটপে অনেক সময় Fn+F4 লাগে; Mac-এ Cmd+T.) - Mixed reference-ও চলে। শুধু নিচে কপি করলে সারি আটকানোই যথেষ্ট:
=B2*F$1→ C3-এ=B3*F$1, C4-এ=B4*F$1— ফল ঠিক। তবে সূত্রটি ডানেও কপি করার সম্ভাবনা থাকলে$F$1-ই নিরাপদ। আর ভবিষ্যতে VAT হার বদলালে? শুধু F1-এ নতুন হার লিখুন — সব সারি একসাথে বদলে যাবে।
| লেখা | নাম | নিচে কপি করলে | ডানে কপি করলে |
|---|---|---|---|
A1 | Relative | A2 | B1 |
$A$1 | Absolute | $A$1 | $A$1 |
A$1 | Mixed (সারি আটকানো) | A$1 | B$1 |
$A1 | Mixed (কলাম আটকানো) | $A2 | $A1 |
Mixed reference-এর সবচেয়ে সুন্দর ব্যবহার — নামতা (গুণের ছক)। B1:J1-এ 1 থেকে 9, A2:A10-এ 1 থেকে 9 লিখে B2-তে =$A2*B$1 লিখুন, তারপর পুরো ছকে কপি করুন। একটিমাত্র সূত্রে ৮১টি ঘর ঠিকঠাক ভরে যাবে — কারণ $A সবসময় বাঁয়ের কলামের সংখ্যা নেয়, আর $1 সবসময় ওপরের সারির।
৫ · দরকারি ফাংশন — SUM থেকে IF
একটি ফাংশন হলো আগে থেকে তৈরি একটি সূত্র, যার একটি নাম আছে। নামের পর বন্ধনীর ভেতরে দেন তার উপকরণ — একে বলে argument, একাধিক হলে কমা দিয়ে আলাদা: =ROUND(B2, 2). ১০০টি ঘর যোগ করতে =B2+B3+…+B101 না লিখে লেখেন =SUM(B2:B101). ফাংশনের নামের প্রথম অক্ষর লিখলেই Excel আর Sheets তালিকা দেখায়; Tab চাপলে বাছাই হয়।
| ফাংশন | কাজ | উদাহরণ (B2:B6 = 85, 70, "অনুপস্থিত", 40, খালি) | ফল |
|---|---|---|---|
SUM | যোগফল | =SUM(B2:B6) | 195 |
AVERAGE | গড় (লেখা আর খালি ঘর বাদ দিয়ে) | =AVERAGE(B2:B6) | 65 |
MIN / MAX | সবচেয়ে ছোট / বড় | =MAX(B2:B6) | 85 |
COUNT | কয়টি ঘরে সংখ্যা আছে | =COUNT(B2:B6) | 3 |
COUNTA | কয়টি ঘর খালি নয় (লেখাসহ) | =COUNTA(B2:B6) | 4 |
ROUND | নির্দিষ্ট দশমিক ঘরে গোল করা | =ROUND(68.456, 1) | 68.5 |
COUNT আর COUNTA-র পার্থক্য প্রায়ই পরীক্ষায় আসে। ক্লাসে কতজন পরীক্ষা দিয়েছে? — নম্বরের কলামে COUNT. তালিকায় মোট কতজনের নাম? — নামের কলামে COUNTA. খালি ঘর গুনতে আছে COUNTBLANK. সবচেয়ে দ্রুত যোগফলের শর্টকাট: সংখ্যার কলামের নিচের ঘরে দাঁড়িয়ে Alt+= (AutoSum). আর কয়েকটি ঘর বাছাই করলেই নিচের status bar-এ Sum, Average, Count দেখা যায় — সূত্র না লিখেই।
IF — শর্ত দিয়ে সিদ্ধান্ত
IF ফাংশন একটি প্রশ্ন করে, আর উত্তর হ্যাঁ হলে এক জিনিস, না হলে আরেক জিনিস দেয়:
=IF(শর্ত, শর্ত সত্য হলে যা, শর্ত মিথ্যা হলে যা) =IF(B2>=33, "পাস", "ফেল")
B2-এ 45 থাকলে ফল “পাস”, 32 থাকলে “ফেল”। লেখা সবসময় উদ্ধৃতিচিহ্নের ভেতরে ("পাস"); সংখ্যা উদ্ধৃতি ছাড়া। একাধিক শর্ত একসাথে দেখতে AND আর OR: =IF(AND(B2>=33, C2>=33), "পাস", "ফেল") — দুই বিষয়েই ৩৩ লাগবে।
Nested IF — SSC/HSC-এর গ্রেড
দুইয়ের বেশি সম্ভাব্য ফল হলে একটি IF-এর “না” অংশে আরেকটি IF বসাতে হয় — একে বলে nested IF. বাংলাদেশের SSC/HSC-এর গ্রেডিং স্কেল দিয়েই দেখি: ৮০–১০০ A+ (৫.০০), ৭০–৭৯ A (৪.০০), ৬০–৬৯ A- (৩.৫০), ৫০–৫৯ B (৩.০০), ৪০–৪৯ C (২.০০), ৩৩–৩৯ D (১.০০), ০–৩২ F (০)। “পরে” চেপে চারজনের নম্বর একে একে সূত্রের ভেতর দিয়ে পাঠান:
1=IF(B2>=80, "A+",2 IF(B2>=70, "A",3 IF(B2>=60, "A-",4 IF(B2>=50, "B",5 IF(B2>=40, "C",6 IF(B2>=33, "D", "F"))))))
| B2 · নম্বর | |
| যতগুলো শর্ত দেখা হলো | |
| গ্রেড | |
| গ্রেড পয়েন্ট |
- নম্বর 80. প্রথম প্রশ্ন: 80 ≥ 80? হ্যাঁ। সাথে সাথে উত্তর A+, বাকি লাইনগুলো আর দেখাই হয় না। খেয়াল করুন — ঠিক ৮০ হলেও A+, কারণ চিহ্ন
>=, শুধু>নয়। - নম্বর 72. 72 ≥ 80? না — তাই “না” অংশে যায়, যেখানে অপেক্ষা করছে দ্বিতীয় IF. 72 ≥ 70? হ্যাঁ → A. দ্বিতীয় IF-এ আলাদা করে “80-এর কম” লিখতে হয়নি, কারণ সেখানে পৌঁছানো মানেই সেটি আগেই প্রমাণ হয়ে গেছে।
- নম্বর 65. ≥80 না, ≥70 না, ≥60 হ্যাঁ → A-. ধাপে ধাপে সিঁড়ি বেয়ে নামার মতো — যে ধাপে প্রথম “হ্যাঁ”, সেখানেই থামা।
- নম্বর 32. ছয়টি প্রশ্নের সবগুলোর উত্তর “না” — শেষ IF-এর “না” অংশ F. তাই F-এর জন্য আলাদা শর্ত লাগেনি।
- নম্বর 33 — সীমানা। 33 ≥ 33? হ্যাঁ → D. পাস নম্বরের সীমানায়
>=আর>-এর ভুল একজন শিক্ষার্থীকে ফেল করিয়ে দিতে পারে। আর শর্তের ক্রম উল্টালে কী হতো? প্রথম লাইনেB2>=33থাকলে 80 পাওয়া শিক্ষার্থীও প্রথম প্রশ্নেই “হ্যাঁ” পেয়ে D হয়ে যেত! বড় থেকে ছোট ক্রমে সাজানো তাই বাধ্যতামূলক। Excel 2019/365 আর Google Sheets-এ একই কাজ সহজে হয়IFSদিয়ে:=IFS(B2>=80,"A+", B2>=70,"A", …, TRUE,"F").
পুরো উদাহরণ — একটি ক্লাসের রেজাল্ট শিট
| A · নাম | B · বাংলা | C · ইংরেজি | D · গণিত | E · মোট | F · গড় | G · গ্রেড | |
|---|---|---|---|---|---|---|---|
| 2 | রিয়া | 85 | 78 | 92 | 255 | 85.0 | A+ |
| 3 | তানভীর | 70 | 65 | 74 | 209 | 69.7 | A- |
| 4 | সুমাইয়া | 55 | 48 | 61 | 164 | 54.7 | B |
| 5 | জাহিদ | 40 | 28 | 35 | 103 | 34.3 | F |
- E2 (মোট):
=SUM(B2:D2); F2 (গড়):=ROUND(AVERAGE(B2:D2), 1); তারপর দুটিকেই নিচে টেনে দিন। - G2 (গ্রেড): ওপরের nested IF, শুধু
B2-এর জায়গায়F2. তানভীরের গড় 69.67 — ৭০-এর একটু নিচে, তাই A-. গোল করা গড় 69.7 দেখে কেউ “প্রায় ৭০” ভাবলেও সূত্র নিখুঁত। - জাহিদের ব্যাপারটা দেখুন: গড় 34.3, অর্থাৎ শুধু গড় দেখলে D. কিন্তু ইংরেজিতে 28 — এক বিষয়ে ফেল। বোর্ডের নিয়মে কোনো বিষয়ে F থাকলে পুরো ফলাফল F. তাই আসল সূত্রের শুরুতে একটি পাহারাদার বসাতে হয়:
=IF(MIN(B2:D2)<33, "F", …nested IF…). (সহজ রাখতে এখানে গড় নম্বর থেকে গ্রেড দেওয়া হয়েছে; আসল বোর্ডে প্রতিটি বিষয়ের গ্রেড পয়েন্টের গড় থেকে GPA হয়, সাথে ঐচ্ছিক বিষয়ের আলাদা নিয়মও আছে।)
আরেকটি nested IF — বিদ্যুৎ বিলের ধাপ (slab)
বিদ্যুৎ বিলে সাধারণত ধাপে ধাপে দাম বাড়ে — প্রথম কিছু ইউনিট কম দরে, পরের ইউনিট বেশি দরে। নিচের দরগুলো শুধু উদাহরণ, কোনো বিতরণ কোম্পানির আসল ট্যারিফ নয়: প্রথম ১০০ ইউনিট ৫ টাকা, ১০১–২০০ ইউনিট ৭ টাকা, ২০০-এর বেশি প্রতি ইউনিট ১০ টাকা। ইউনিট B2-এ থাকলে:
=IF(B2<=100, B2*5,
IF(B2<=200, 100*5 + (B2-100)*7,
100*5 + 100*7 + (B2-200)*10))
৮০ ইউনিট → 80×5 = 400 টাকা। ১৫০ ইউনিট → 500 + 50×7 = 850. ২৫০ ইউনিট → 500 + 700 + 50×10 = 1700. দরগুলো আলাদা ঘরে রাখার উন্নত রূপটি অনুশীলনে করবেন।
৬ · শর্তসাপেক্ষ যোগ, তারিখ আর লেখার ফাংশন
SUMIF, COUNTIF, AVERAGEIF — দোকানের খাতার প্রশ্ন
করিম চাচার দিনের খাতা এমন:
| A · পণ্য | B · পরিমাণ | C · দর | D · মোট =B*C | |
|---|---|---|---|---|
| 2 | চাল | 20 | 70 | 1400 |
| 3 | ডাল | 5 | 110 | 550 |
| 4 | তেল | 4 | 190 | 760 |
| 5 | চাল | 15 | 70 | 1050 |
| 6 | ডিম | 30 | 12 | 360 |
| 7 | ডাল | 3 | 110 | 330 |
| 8 | দিনের মোট =SUM(D2:D7) | 4450 | ||
এখন প্রশ্ন: আজ শুধু চাল থেকে কত টাকা এলো? প্রতিটি লাইন চোখে দেখে যোগ করা যায়, কিন্তু ৫০০ লাইনে? এর উত্তর SUMIF:
| প্রশ্ন | সূত্র | ফল |
|---|---|---|
| চাল থেকে মোট বিক্রি | =SUMIF(A2:A7, "চাল", D2:D7) | 2450 |
| চাল কয়বার বিক্রি হলো | =COUNTIF(A2:A7, "চাল") | 2 |
| ডালের প্রতি বিক্রিতে গড়ে কত | =AVERAGEIF(A2:A7, "ডাল", D2:D7) | 440 |
| ৫০০ টাকার বেশি কয়টি বিক্রি | =COUNTIF(D2:D7, ">500") | 4 |
| পণ্যের নাম অন্য ঘরে (F2-এ "তেল") | =SUMIF($A$2:$A$7, F2, $D$2:$D$7) | 760 |
SUMIF পড়ার নিয়ম: “এই রেঞ্জে খোঁজো, এই শর্ত যেখানে মেলে, সেই সারিগুলোর এই রেঞ্জের মান যোগ করো।” শেষ উদাহরণে রেঞ্জগুলো $ দিয়ে আটকানো — যাতে F2, F3, F4-এ চাল, ডাল, তেল লিখে সূত্রটি নিচে টেনে দিলে পণ্যভিত্তিক একটি সারাংশ ছক এক মুহূর্তে তৈরি হয়। একাধিক শর্তের জন্য SUMIFS, আর বড় সারাংশের জন্য pivot table — দুটোই পর্ব ১১-এ।
পারিবারিক মাসিক বাজেট
| A · খাত | B · টাকা | C · আয়ের কত % =B/$B$4 | |
|---|---|---|---|
| 2 | বেতন | 45,000 | |
| 3 | অন্যান্য আয় (টিউশনি) | 5,000 | |
| 4 | মোট আয় =SUM(B2:B3) | 50,000 | |
| 6 | বাসাভাড়া | 15,000 | 30% |
| 7 | বাজার | 14,000 | 28% |
| 8 | বিদ্যুৎ, গ্যাস, পানি | 3,500 | 7% |
| 9 | যাতায়াত | 3,000 | 6% |
| 10 | সন্তানের পড়াশোনা | 6,000 | 12% |
| 11 | মোবাইল ও ইন্টারনেট | 1,200 | 2.4% |
| 12 | চিকিৎসা | 2,000 | 4% |
| 13 | মোট খরচ =SUM(B6:B12) | 44,700 | 89.4% |
| 14 | সঞ্চয় =B4-B13 | 5,300 | 10.6% |
C6-এর সূত্র =B6/$B$4 — আবার সেই absolute reference: প্রতিটি খাতকে একই “মোট আয়” দিয়ে ভাগ। শেষে একটি সতর্কবার্তা যোগ করা যায়: =IF(B14<0, "সাবধান: আয়ের চেয়ে খরচ বেশি", "ঠিক আছে").
তারিখের হিসাব — TODAY আর বয়স
স্প্রেডশিটের ভেতরে প্রতিটি তারিখ আসলে একটি সংখ্যা — একটি নির্দিষ্ট শুরুর দিন থেকে কত দিন পার হয়েছে (Excel-এ ১ জানুয়ারি ১৯০০ = 1). তাই দুই তারিখের বিয়োগ মানে মাঝের দিনের সংখ্যা।
=TODAY()— আজকের তারিখ, প্রতিদিন নিজে বদলায়। (=NOW()দেয় তারিখ আর সময়।)=C2-B2— বিল দেওয়ার তারিখ থেকে টাকা পাওয়ার তারিখ পর্যন্ত কত দিন। ফলের ঘর তারিখের মতো দেখালে ফরম্যাট General বা Number করুন।=DATEDIF(B2, DATE(2026,12,31), "Y")— নির্দিষ্ট তারিখে পূর্ণ বয়স কত বছর। চাকরির বিজ্ঞপ্তিতে প্রায়ই লেখা থাকে “অমুক তারিখে বয়স ৩০ বছরের বেশি নয়” — আবেদনকারীদের তালিকায় এক সূত্রেই সবার বয়স যাচাই করা যায়।
লেখার ফাংশন — যেটুকু লাগে
| সূত্র | কাজ | ফল |
|---|---|---|
=A2&" "&B2 বা =CONCAT(A2," ",B2) | নামের দুই অংশ জোড়া | Rahim Uddin |
=UPPER(A2) | সব বড় হাতের অক্ষর | RAHIM |
=LEFT(C2, 3) | বাঁ থেকে ৩টি অক্ষর | 017 (অপারেটরের কোড) |
=RIGHT(C2, 4) | ডান থেকে ৪টি অক্ষর | 5678 |
=TRIM(A2) | বাড়তি স্পেস মুছে ফেলা | " Rahim " → Rahim |
CONCAT এসেছে Excel 2019 থেকে; পুরোনো সংস্করণে একই কাজ করে CONCATENATE, আর & সব জায়গায় চলে। TRIM ছোট মনে হলেও খুব কাজের — অনলাইন ফর্ম থেকে আসা নামের শেষে একটি অদৃশ্য স্পেস থাকলে COUNTIF(A:A,"Rahim") সেটিকে গুনবেই না। বাংলা লেখায় একটি সূক্ষ্মতা: LEFT চোখে দেখা “অক্ষর” নয়, Unicode-এর code point গোনে — “ক্ষ” দেখতে একটি, কিন্তু ভেতরে তিনটি (ক + ্ + ষ)। কেন, তা পর্ব ০৭-এ দেখেছেন।
নিজে চালিয়ে দেখুন — ২০ লাইনের একটি স্প্রেডশিট ইঞ্জিন
স্প্রেডশিট ভেতরে কী করে, তা বোঝার সবচেয়ে ভালো উপায় একটি খুদে সংস্করণ নিজে চালানো। নিচের প্রোগ্রামে কয়েকটি ঘরে মান, কয়েকটিতে সূত্র (SUM আর IF-সহ)। একটি ঘরের মান চাইলে প্রোগ্রাম আগে তার সূত্রের ভেতরের ঘরগুলোর মান বের করে — অর্থাৎ নির্ভরতার ক্রমে হিসাব করে। তারপর শুধু একটি ঘর (চালের দর) বদলানো হয়। “চালান” চাপুন:
const cells = { B2: 20, C2: 70, D2: "=B2*C2", B3: 5, C3: 110, D3: "=B3*C3",
D4: "=SUM(D2:D3)", E4: '=IF(D4>=2000,"ভালো দিন","সাধারণ দিন")' };
const SUM = (...xs) => xs.reduce((s, x) => s + x, 0);
const IF = (test, yes, no) => (test ? yes : no);
function val(ref) { // একটি ঘরের মান
const v = cells[ref];
if (typeof v !== "string" || v[0] !== "=") return v ?? 0; // সাধারণ মান
const js = v.slice(1)
.replace(/([A-Z])(\d+):\1(\d+)/g, (m, c, a, b) => // D2:D3 → D2,D3
Array.from({ length: b - a + 1 }, (_, i) => c + (+a + i)).join(","))
.replace(/\b[A-Z]\d+\b/g, (r) => `val("${r}")`); // D2 → val("D2")
return Function("val", "SUM", "IF", "return " + js)(val, SUM, IF);
}
function show(label) {
console.log(label);
for (const r of ["D2", "D3", "D4", "E4"]) console.log(` ${r} = ${val(r)}`);
}
show("চালের দর 70:");
cells.C2 = 75; // শুধু একটি ঘর বদলালাম
show("চালের দর 75:");প্রথমবার আসে D2 = 1400, D3 = 550, D4 = 1950, E4 = সাধারণ দিন. দর 75 করার পর D2 = 1500, D3 = 550 (অপরিবর্তিত), D4 = 2050, আর E4 = ভালো দিন — একটি ঘর বদলানোয় শিকল ধরে তিনটি ফল বদলেছে। val("E4") চাইলে প্রোগ্রাম আগে val("D4") চায়, সে আবার D2 আর D3 চায় — নির্ভরতার গাছ বেয়ে নিচে নেমে তারপর ওপরে হিসাব ফেরে। প্রোগ্রামটি সূত্রের লেখাকে JavaScript-এ অনুবাদ করে: রেঞ্জ D2:D3 হয় D2,D3, আর প্রতিটি ঠিকানা হয় val("…"). চাইলে cells-এ D2: "=D4" লিখে চালিয়ে দেখুন — D4 নিজেই D2-এর ওপর নির্ভর করে, তাই অসীম চক্র (circular reference) তৈরি হয় আর প্রোগ্রাম এরর দেয়; আসল Excel এই অবস্থাটি আগেই ধরে সতর্ক করে। (এটি শেখার জন্য একটি খুব সরল খেলনা; আসল স্প্রেডশিট সূত্র পড়তে পূর্ণাঙ্গ parser আর নির্ভরতার তালিকা ব্যবহার করে।)
৭ · এরর চেনা আর সারানো — #DIV/0! থেকে ####
স্প্রেডশিটের এরর দেখতে ভয়ের, কিন্তু আসলে এগুলো সাহায্যকারী — প্রতিটি error value বলে দেয় কী ধরনের সমস্যা হয়েছে।
| এরর | মানে | সাধারণ কারণ | সমাধান |
|---|---|---|---|
#DIV/0! | শূন্য দিয়ে ভাগ | ভাজকের ঘর 0 বা খালি | ডেটা ঠিক করুন, বা IF দিয়ে আগে যাচাই করুন |
#VALUE! | ভুল ধরনের মান | লেখা দিয়ে অঙ্ক: ঘরে 500 টাকা লেখা থাকলে =A2*2 | ঘরে শুধু সংখ্যা রাখুন; “টাকা” ফরম্যাটে দেখান |
#NAME? | অচেনা নাম | ফাংশনের বানান ভুল (=SUMM(…)), বা লেখা উদ্ধৃতি ছাড়া (=IF(B2>=33,পাস,ফেল)) | বানান আর উদ্ধৃতিচিহ্ন দেখুন |
#REF! | ঠিকানা আর নেই | সূত্র যে সারি/কলামকে দেখাচ্ছিল, সেটি মুছে ফেলা হয়েছে | Ctrl+Z দিয়ে ফেরান, বা সূত্রে নতুন ঠিকানা দিন |
#N/A | খুঁজে পাওয়া যায়নি | খোঁজার ফাংশন (XLOOKUP, VLOOKUP) মান পায়নি | পর্ব ১১-এ বিস্তারিত |
#### | এরর নয় — জায়গা কম | কলাম সরু, সংখ্যা বা তারিখ ধরছে না (অথবা ঋণাত্মক তারিখ) | কলামের শিরোনামের ডান সীমানায় ডাবল-ক্লিক করে চওড়া করুন |
একটি এরর একা থাকে না — যে ঘর এরর-ঘরের ওপর নির্ভর করে, সেটিতেও এরর ছড়িয়ে পড়ে। দোকানের “প্রতি ক্রেতা গড়ে কত টাকার কেনাকাটা” হিসাবের উদাহরণে দেখুন:
| দিন | B · বিক্রি | C · ক্রেতা | D · সূত্র | D · ফল |
|---|---|---|---|---|
| শনি | 4450 | 50 | | |
| রবি (বন্ধ) | 0 | 0 | | |
| সোম | 5200 | 65 | | |
| সপ্তাহের গড় | |
- সূত্র ঠিকই আছে। শনিবার ৫০ জন ক্রেতা ৪৪৫০ টাকার কেনাকাটা করেছেন:
=B2/C2→ 89 টাকা গড়ে। - নিচে কপি করলেন। সোমবার ঠিক আছে (80). কিন্তু রবিবার দোকান বন্ধ ছিল — ক্রেতা 0. শূন্য দিয়ে ভাগ গণিতে অসংজ্ঞায়িত, তাই ঘরে এলো
#DIV/0!. সূত্রে ভুল নেই, সমস্যা ডেটার বাস্তবতায়। - এরর ছড়িয়ে পড়ল। সপ্তাহের গড়
=AVERAGE(D2:D4)-এর রেঞ্জে একটি এরর-ঘর আছে, তাই সেটিও#DIV/0!. বড় রিপোর্টে একটি ভুল ঘর এভাবে শিকল ধরে পুরো সারাংশ নষ্ট করে দেয়। - IF দিয়ে পাহারা।
=IF(C2=0,"",B2/C2)— “ক্রেতা 0 হলে ঘর ফাঁকা রাখো, নইলে ভাগ করো।” ফাঁকা লেখা ("")AVERAGEগোনে না, তাই সপ্তাহের গড় হলো (89 + 80) ÷ 2 = 84.5 — বন্ধ দিনটি বাদ দিয়ে, যা বাস্তবেও ঠিক। - IFERROR — সহজ, কিন্তু সাবধান।
=IFERROR(B2/C2,"")যেকোনো এরর হলেই ফাঁকা দেখায়। লেখা সংক্ষিপ্ত, কিন্তু এটি সব এরর লুকিয়ে ফেলে — ভবিষ্যতে কেউ ভুল করে কোনো ঘরে লেখা বসালে যে#VALUE!আসার কথা, সেটিও চুপচাপ ফাঁকা হয়ে যাবে। যে এরর আপনি আশা করেন, শুধু সেটিইIFদিয়ে আলাদা করে সামলানো বেশি নিরাপদ।
সূত্র দেখার এক্স-রে: Ctrl+` (Esc-এর নিচের বোতাম) চাপলে সব ঘরে ফলের বদলে সূত্র দেখা যায় — আবার চাপলে ফিরে আসে। বড় শিটে কোথাও সূত্রের বদলে কেউ হাতে সংখ্যা বসিয়ে দিয়েছে কি না (যা পরে আর আপডেট হবে না), ধরার সবচেয়ে সহজ উপায়।
৮ · সাজানো, ছাঁকা, Freeze, ফরম্যাটিং আর প্রিন্ট
Sort আর Filter
- Sort (সাজানো): টেবিলের ভেতরের যেকোনো ঘরে দাঁড়িয়ে Data → Sort. “My data has headers” টিক দিন, তারপর কোন কলাম ধরে, ছোট থেকে বড় না বড় থেকে ছোট। মেধাতালিকা বানাতে: মোট নম্বর ধরে বড় থেকে ছোট; সমান হলে “Add Level” দিয়ে দ্বিতীয় শর্ত — গণিতের নম্বর।
- Filter (ছাঁকা): Data → Filter (Ctrl+Shift+L). প্রতিটি শিরোনামে একটি ছোট তীর আসে; সেখান থেকে বাছুন “শুধু চাল”, বা Number Filters → “Greater Than 500”. ডেটা মোছে না, শুধু বাকি সারিগুলো সাময়িকভাবে লুকায়। Google Sheets-এ: Data → Create a filter.
এক কলাম আলাদা করে sort করবেন না। শুধু নামের কলাম বাছাই করে A→Z করলে নামগুলো সাজবে, কিন্তু পাশের নম্বরগুলো আগের জায়গায় থেকে যাবে — রিয়ার নম্বর চলে যাবে জাহিদের নামের পাশে! Excel এ সময় “Expand the selection?” জিজ্ঞেস করে — সবসময় Expand বাছুন।
Freeze Panes — শিরোনাম যেন হারিয়ে না যায়
৫০০ সারির শিটে নিচে স্ক্রল করলে প্রথম সারির শিরোনাম (নাম, বাংলা, ইংরেজি…) চোখের আড়ালে চলে যায় — তখন কোন কলাম কী, মনে রাখা কঠিন। Freeze Panes শিরোনামকে জায়গায় আটকে রাখে: View → Freeze Panes → Freeze Top Row. Google Sheets-এ: View → Freeze → 1 row.
দেখতে গোছানো — border, রং আর conditional formatting
- Border আর fill: Home ট্যাবে border বোতাম (All Borders) দিয়ে ছকের দাগ, Fill Color দিয়ে শিরোনামের সারিতে হালকা রং, আর Bold. পর্দায় ধূসর দাগগুলো (gridlines) সাধারণত প্রিন্টে আসে না — প্রিন্টে দাগ চাইলে border দিতেই হবে।
- Conditional formatting: শর্ত মিললে ঘর নিজে রং বদলায়। Home → Conditional Formatting → Highlight Cells Rules → Less Than →
33→ লাল। এখন কেউ ৩৩-এর কম পেলেই ঘর লাল হয়ে যাবে, নম্বর ঠিক করলে আবার স্বাভাবিক। Data bar, রঙের মাত্রা আর সূত্রভিত্তিক নিয়ম পর্ব ১১-এ।
প্রিন্ট — এক পাতায়, প্রতি পাতায় শিরোনামসহ
স্প্রেডশিট প্রিন্ট করা নতুনদের সবচেয়ে বিরক্তিকর অভিজ্ঞতা — শেষ কলামটি একা একটি পাতায়, দ্বিতীয় পাতায় কোন কলাম কী বোঝা যায় না। এই কয়টি ধাপ মনে রাখুন:
- আগে দেখুন: Ctrl+P চাপলে ডানে Print Preview আসে। View → Page Break Preview-এ নীল দাগে দেখা যায় কোথায় পাতা ভাঙছে; দাগ টেনে সরানোও যায়।
- কী প্রিন্ট হবে: শুধু একটি অংশ চাইলে সেটি বাছাই করে Page Layout → Print Area → Set Print Area.
- পাতার দিক: কলাম বেশি হলে Page Layout → Orientation → Landscape (আড়াআড়ি)।
- এক পাতায় আঁটানো: Print-এর Settings-এর শেষে Scaling → Fit All Columns on One Page (সব কলাম এক পাতার প্রস্থে) বা Fit Sheet on One Page.
- প্রতি পাতায় শিরোনাম: Page Layout → Print Titles → “Rows to repeat at top”-এ
$1:$1. এখন ২০ পাতার রেজাল্ট শিটের প্রতিটি পাতার মাথায় “নাম, বাংলা, ইংরেজি…” ছাপা হবে। - Google Sheets-এ: File → Print খুললে একই পাতায় পাতার আকার, দিক, Scale (Fit to width) আর শিরোনাম পুনরাবৃত্তির অপশন পাবেন। সরাসরি PDF বানাতে প্রিন্টারের জায়গায় “Save as PDF” / “Microsoft Print to PDF” বাছুন।
৯ · Excel বনাম Google Sheets, আর CSV-তে বাংলা
এই পর্বের প্রায় সব সূত্র দুই জায়গাতেই হুবহু চলে। পার্থক্য মূলত কাজের ধরনে — একটি মূলত কম্পিউটারে ইনস্টল করা প্রোগ্রাম, অন্যটি ব্রাউজারে চলা web app.
| বিষয় | Microsoft Excel | Google Sheets |
|---|---|---|
| কোথায় চলে | মূলত Windows/Mac-এ ইনস্টল করা প্রোগ্রাম; সীমিত সুবিধার বিনা মূল্যের web সংস্করণও আছে | ব্রাউজারে, Google অ্যাকাউন্ট থাকলেই বিনা মূল্যে; মোবাইল অ্যাপও আছে |
| ফাইল কোথায় থাকে | নিজের কম্পিউটারে .xlsx; চাইলে OneDrive-এ | Google Drive-এ, অর্থাৎ ক্লাউডে |
| একসাথে কাজ | OneDrive/SharePoint-এ রাখলে সম্ভব | শুরু থেকেই সবচেয়ে বড় শক্তি — Share বোতাম, একই সময়ে কয়েকজন সম্পাদনা, মন্তব্য |
| ইন্টারনেট ছাড়া | পুরোপুরি চলে | Offline মোড আগে থেকে চালু করে রাখলে চলে (Chrome বা Edge-এ) |
| ফাংশন | মৌলিকগুলো একই; বড় ডেটা, Power Query, VBA macro-তে এগিয়ে | মৌলিকগুলো একই; GOOGLETRANSLATE, IMPORTRANGE-এর মতো কিছু নিজস্ব ফাংশন; macro লেখা হয় Apps Script-এ |
একসাথে কাজ, শেয়ারের অনুমতি (Viewer, Commenter, Editor) আর ক্লাউড স্টোরেজের পুরো গল্প পর্ব ১৪-এ।
CSV — সবচেয়ে সরল টেবিল, আর বাংলার ফাঁদ
CSV (Comma-Separated Values) হলো একটি সাধারণ লেখার ফাইল, যেখানে প্রতিটি সারি একটি লাইন আর ঘরগুলো কমা দিয়ে আলাদা: নাম,রোল,নম্বর. এতে কোনো ফরম্যাট, সূত্র, রং বা একাধিক শিট থাকে না — শুধু কাঁচা ডেটা। এজন্যই প্রায় সব সফটওয়্যার CSV পড়তে পারে: ব্যাংকের স্টেটমেন্ট ডাউনলোড, অনলাইন ফর্মের উত্তর, স্কুলের সফটওয়্যারে নম্বর আপলোড, এক ডেটাবেস থেকে আরেকটিতে ডেটা নেওয়া।
বাংলা নাম CSV-তে গিয়ে “রহি” হয়ে গেল? কারণ ফাইলটি এক encoding-এ লেখা, আর অন্য encoding ধরে পড়া হয়েছে (পর্ব ০৭)। সমাধান:
- সেভ করার সময়: Excel-এ File → Save As → ধরন CSV UTF-8 (Comma delimited) (*.csv) — শুধু “CSV (Comma delimited)” নয়। পুরোনোটি বাংলা অক্ষর রাখতে পারে না, প্রশ্নবোধক চিহ্ন বসিয়ে দেয়।
- খোলার সময়: ডাবল-ক্লিকে বাংলা ভাঙলে Excel-এ Data → From Text/CSV দিয়ে ফাইলটি আনুন, আর File Origin-এ বাছুন
65001: Unicode (UTF-8). - Google Sheets File → Download → Comma-separated values (.csv) সবসময় UTF-8-এ সেভ করে, আর খোলার সময়ও সাধারণত ঠিকঠাক পড়ে।
- CSV-তে সেভ করলে সূত্র, ফরম্যাট আর বাকি শিট হারায় — শুধু প্রথম (চলতি) শিটের মানগুলো থাকে। কাজের আসল ফাইল তাই
.xlsx-এ রাখুন, CSV শুধু আদান-প্রদানের জন্য।
আরও গভীরে: Excel-এ তারিখের ভেতরের সংখ্যা ১ জানুয়ারি ১৯০০ থেকে গোনা হয়, আর Excel ইচ্ছাকৃতভাবে ধরে নেয় ১৯০০ সাল অধিবর্ষ ছিল (আসলে ছিল না) — Lotus 1-2-3-এর একটি ভুলের সাথে মিল রাখতে, যাতে পুরোনো ফাইল একই ফল দেয়। আরেকটি মজার নিয়ম: =-2^2-এর ফল Excel-এ 4, কারণ এখানে ঋণাত্মক চিহ্ন ঘাতের আগে বসে — যা গণিত বইয়ের নিয়মের (−4) সাথে মেলে না। আর দশমিক কেন কখনো কখনো 0.1+0.2-এর মতো ছোট্ট গরমিল দেখায়, তা কম্পিউটারের binary সংখ্যা-পদ্ধতির ফল (পর্ব ১৬)। স্প্রেডশিটের টেবিলের ধারণা থেকে আসল ডেটাবেসে যেতে চাইলে পর্ব ৪১–৪২ আর ABCL TECH-এর DBMS ও SQL কোর্স; নিজে ডেটা নিয়ে প্রোগ্রাম লিখতে চাইলে Python কোর্স.
পরীক্ষা ও ইন্টারভিউতে: চাকরির পরীক্ষার কম্পিউটার অংশে আর SSC/HSC ICT-তে এ ধরনের প্রশ্ন প্রায়ই আসে —
- Excel-এ সূত্র কোন চিহ্ন দিয়ে শুরু হয়? — সমান চিহ্ন
=. - C কলাম আর ৫ নম্বর সারির ঘরের ঠিকানা কী? —
C5(আগে কলাম, পরে সারি)। - Absolute reference বোঝাতে কোন চিহ্ন? — ডলার চিহ্ন
$, যেমন$A$1; বদলানোর শর্টকাট F4. - SUM আর COUNT-এর পার্থক্য? — SUM মানগুলোর যোগফল দেয়; COUNT গোনে কয়টি ঘরে সংখ্যা আছে।
#DIV/0!মানে কী? — কোনো সংখ্যাকে শূন্য বা খালি ঘর দিয়ে ভাগ করা হয়েছে।
১০ · AI-এর যুগে — AI দিয়ে সূত্র লেখানো, তারপর যাচাই
“Excel-এ এমন একটি সূত্র লিখে দাও, যা চাল বিক্রির মোট বের করবে” — এমন কাজে AI চ্যাটবট সত্যিই দারুণ, আর Excel ও Sheets-এর ভেতরেও এখন AI সহকারী (Copilot, Gemini) আছে। কিন্তু AI আপনার শিট দেখে না — আপনি যা বর্ণনা করেন, তার ওপর অনুমান করে। তাই কিছু ভুল বারবার দেখা যায়:
| AI-এর ভুল | কেন হয় | আপনি যা করবেন |
|---|---|---|
ভুল রেঞ্জ (A2:A100, অথচ ডেটা B কলামে, বা শিরোনামসহ A1 থেকে) | শিটের গঠন জানে না | কলামের নাম, শুরু-শেষ সারি আর শিরোনাম আছে কি না স্পষ্ট বলুন |
$ নেই, ফলে নিচে টানলে ভুল | সূত্রটি কপি হবে কি না জানে না | বলুন “সূত্রটি নিচের সব সারিতে টেনে কপি করব” |
নতুন ফাংশন (XLOOKUP, IFS, LET) পুরোনো Excel-এ | সবচেয়ে আধুনিক সমাধান দিতে চায় | নিজের Excel সংস্করণ বা Google Sheets জানান |
| কমার বদলে সেমিকোলন, বা উল্টোটা | কিছু দেশের অঞ্চল-সেটিংসে (যেখানে দশমিক চিহ্ন কমা) সূত্রে ; লাগে: =IF(A1>5;"Yes";"No") | সূত্র না চললে বিভাজক দেখুন; বাংলাদেশি/ইংরেজি সেটিংসে সাধারণত কমা |
| বাস্তব নিয়ম বানিয়ে বলা (VAT হার, বিদ্যুৎ ট্যারিফ, বোর্ডের নিয়ম) | পুরোনো বা অন্য দেশের তথ্য মিশিয়ে ফেলে | হার আর নিয়ম নিজে অফিসিয়াল উৎস থেকে বসান; AI-কে শুধু সূত্রের কাঠামো লিখতে দিন |
ভালো প্রশ্নে থাকে — শিটের গঠন, কয়েকটি নমুনা সারি, কী চান, আর সূত্র কোথায় বসবে ও কপি হবে কি না:
এই প্রশ্নের সঠিক উত্তর হওয়ার কথা =SUMIF($A$2:$A$500, E2, $D$2:$D$500), আর নমুনায় চালের মোট 1400 + 1050 = 2450. AI যদি $ ছাড়া রেঞ্জ দেয়, বা হিসাবটা অন্য আসে — সেখানেই ভুল ধরা পড়ল।
AI-এর সূত্র শিটে বসানোর আগে — চেকলিস্ট
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিয়ে নিজে কিছুক্ষণ ভাবুন — তারপর “→ উত্তর” চাপুন। ঘর আর সূত্রের এই সরল ছকের পেছনে আছে ব্যবসা, বিজ্ঞান আর প্রোগ্রামিংয়ের বড় গল্প।
প্র ০১VisiCalc-কে কেন বলা হয় পার্সোনাল কম্পিউটারের প্রথম “killer app”? একটি সফটওয়্যার কীভাবে একটি কম্পিউটার বিক্রি করাতে পারে?
১৯৭০-এর দশকের শেষে Apple II-এর মতো পার্সোনাল কম্পিউটার বাজারে ছিল, কিন্তু বেশিরভাগ মানুষের কাছে সেগুলো ছিল শখের যন্ত্র — গেম খেলা, ছোট প্রোগ্রাম লেখা। ব্যবসায়ী বা হিসাবরক্ষকের কাছে প্রশ্ন ছিল সরল: “এটা দিয়ে আমার কোন কাজ হবে?”
উত্তর এলো ১৯৭৯ সালে, VisiCalc নামে। Harvard Business School-এর ছাত্র Dan Bricklin ক্লাসে দেখতেন, অধ্যাপক ব্ল্যাকবোর্ডে একটি আর্থিক মডেলের ছক আঁকেন, আর একটি সংখ্যা বদলালে মুছে মুছে বাকি সব ঘর নতুন করে হিসাব করেন। তাঁর ভাবনা — এই ছক যদি পর্দায় থাকত, আর বাকি ঘর নিজেই বদলাত? বন্ধু Bob Frankston প্রোগ্রামটি লিখলেন, তাঁদের কোম্পানি Software Arts; বাজারে আনল Personal Software (পরে নাম VisiCorp). প্রথমে এটি চলত শুধু Apple II-তে।
ফলাফল ছিল অভাবনীয়। আগে যে “what-if” প্রশ্নের — “দাম ৫% বাড়ালে বছরের লাভ কত?” — উত্তর পেতে হিসাবরক্ষকের কয়েক ঘণ্টা বা দিন লাগত, এখন লাগত কয়েক সেকেন্ড। অনেক ব্যবসায়ী দোকানে গিয়ে বলতেন “VisiCalc চালানোর কম্পিউটারটা দিন” — অর্থাৎ সফটওয়্যারের জন্য তাঁরা হার্ডওয়্যার কিনছিলেন। প্রযুক্তি-জগতে এমন সফটওয়্যারকে বলে killer app — যে একাই একটি প্ল্যাটফর্মকে প্রয়োজনীয় করে তোলে। VisiCalc কয়েক লাখ কপি বিক্রি হয়েছিল, আর Apple II-কে অফিসের টেবিলে পৌঁছে দিয়েছিল।
মূল উপলব্ধি: মানুষ প্রযুক্তি কেনে না, কেনে সমস্যার সমাধান। হার্ডওয়্যার যত শক্তিশালীই হোক, একটি সত্যিকারের দৈনন্দিন সমস্যা সমাধান করা সফটওয়্যারই তাকে সাধারণ মানুষের কাছে অপরিহার্য করে তোলে।
প্র ০২VisiCalc থেকে Lotus 1-2-3, তারপর Excel — বাজারের রাজা বারবার বদলাল কেন?
১৯৮১ সালে IBM তাদের Personal Computer (IBM PC) আনে, আর অফিসের জগৎ দ্রুত সেদিকে ঝুঁকে পড়ে। VisiCalc-এর IBM PC সংস্করণও ছিল, কিন্তু সেটি নতুন যন্ত্রের পুরো সুবিধা নিতে পারেনি। ১৯৮৩ সালের জানুয়ারিতে Mitch Kapor-এর কোম্পানি Lotus Development আনে Lotus 1-2-3 — বিশেষভাবে IBM PC-র জন্য লেখা, অনেক দ্রুত, আর নামের “1-2-3” মানে তিনটি কাজ একসাথে: স্প্রেডশিট, চার্ট আর সরল ডেটাবেস। অল্প সময়েই এটি অফিসের মানদণ্ড হয়ে দাঁড়ায়, আর IBM PC-র জন্য সেই “killer app” হয়ে ওঠে, যা VisiCalc ছিল Apple II-এর জন্য।
এদিকে Microsoft-এর নতুন স্প্রেডশিট Excel প্রথমে আনল ১৯৮৫ সালে Apple Macintosh-এর জন্য, যেখানে মাউস আর গ্রাফিক্যাল ইন্টারফেস ছিল। মাউস দিয়ে ঘর বাছাই, মেনু, নানা ফন্ট, পর্দায় যা দেখা যায় তা-ই ছাপা — Excel শুরু থেকেই GUI-র জন্য তৈরি। ১৯৮৭ সালে আসে Windows-এর জন্য Excel.
Lotus-এর বড় ভুল ছিল সময়ের হিসাব — তারা অনেকদিন DOS-এর ওপর জোর দিয়েছিল, আর Windows সংস্করণ আনতে দেরি করেছিল। ১৯৯০-এর দশকে Windows যখন সবার কম্পিউটারে, তখন Excel আগেই প্রস্তুত। Microsoft আরও একটি চাল দেয়: Word, Excel, PowerPoint একসাথে “Office” প্যাকেজে বিক্রি। দশকের মাঝামাঝি Excel শীর্ষে উঠে আসে, আর ১৯৯৫ সালে IBM কিনে নেয় Lotus কোম্পানিকে।
মূল উপলব্ধি: প্রযুক্তির বাজারে “প্রথম” হওয়া যথেষ্ট নয়। প্রতিটি নতুন প্ল্যাটফর্ম — IBM PC, GUI, ক্লাউড — নতুন বিজয়ী বানায়, আর যারা প্ল্যাটফর্মের পরিবর্তনে দেরি করে, তারা যত বড়ই হোক, পিছিয়ে পড়ে।
প্র ০৩স্প্রেডশিটের ছোট্ট ভুল কি সত্যিই বড় ক্ষতি করতে পারে? বাস্তব কয়েকটি ঘটনা কী শেখায়?
স্প্রেডশিটের ভুল সাধারণত চুপচাপ থাকে — কোনো এরর বার্তা নেই, শুধু একটি ভুল সংখ্যা, যা দেখতে একদম স্বাভাবিক। কয়েকটি পরিচিত ঘটনা:
অর্থনীতির গবেষণা (২০১৩): Harvard-এর অর্থনীতিবিদ Carmen Reinhart আর Kenneth Rogoff ২০১০ সালে একটি প্রভাবশালী গবেষণাপত্রে দেখান, সরকারি ঋণ দেশের আয়ের প্রায় ৯০%-এর বেশি হলে অর্থনৈতিক প্রবৃদ্ধি অনেক কমে যায়। বিভিন্ন দেশে ব্যয়-সংকোচনের নীতির পক্ষে এটি বারবার উদ্ধৃত হয়। ২০১৩ সালে University of Massachusetts Amherst-এর স্নাতকোত্তর ছাত্র Thomas Herndon তাঁর অধ্যাপকদের (Michael Ash, Robert Pollin) সাথে ফলটি আবার হিসাব করতে গিয়ে দেখেন, গড়ের একটি সূত্রের রেঞ্জে কয়েকটি দেশের সারি বাদ পড়ে গেছে। সাথে ছিল কিছু দেশের ডেটা বাদ দেওয়া আর গড় করার পদ্ধতি নিয়ে প্রশ্ন। সংশোধনের পর নাটকীয় পতনের ছবিটি অনেক দুর্বল হয়ে যায়। মূল লেখকেরা রেঞ্জের ভুলটি স্বীকার করেন, যদিও বলেন তাঁদের মূল বক্তব্য টিকে আছে — বিতর্কটি আজও স্প্রেডশিট-ঝুঁকির সবচেয়ে উদ্ধৃত উদাহরণ।
জিনের নাম বদল (২০২০): জীববিজ্ঞানীরা জিনের তালিকা Excel-এ রাখেন। কিন্তু SEPT1 বা MARCH1-এর মতো জিনের নাম টাইপ করলে Excel সেটিকে তারিখ ভেবে “1-Sep” বানিয়ে ফেলে। ২০১৬ সালের একটি গবেষণায় দেখা যায়, Excel-এ জিনের তালিকা যুক্ত করা প্রকাশিত গবেষণাপত্রের প্রায় পাঁচ ভাগের এক ভাগে এই ধরনের ভুল আছে। শেষে ২০২০ সালে জিনের নামকরণের আন্তর্জাতিক কমিটি (HUGO Gene Nomenclature Committee) কয়েক ডজন জিনের নামই বদলে দেয় — SEPT1 হয় SEPTIN1, MARCH1 হয় MARCHF1. সফটওয়্যার না বদলে বিজ্ঞান নিজের ভাষা বদলাল!
সারির সীমা (২০২০): যুক্তরাজ্যে COVID-19 পরীক্ষার ফল একত্র করার একটি প্রক্রিয়ায় পুরোনো .xls ফরম্যাট ব্যবহার হয়েছিল, যার সীমা ৬৫,৫৩৬ সারি। সীমা পেরোনো সারিগুলো নিঃশব্দে বাদ পড়ে, আর প্রায় ১৬ হাজার পজিটিভ ফল কয়েক দিন দেরিতে যোগাযোগ-অনুসন্ধানে পৌঁছায়।
গবেষকেরা বারবার দেখেছেন, বড় ও জটিল স্প্রেডশিটের বড় অংশে অন্তত একটি ভুল থাকে। প্রতিরোধের উপায় পরিচিত: ইনপুট, হিসাব আর ফল আলাদা অংশে রাখা; হার-দরের মতো ধ্রুবক এক ঘরে রেখে $ দিয়ে রেফার করা; মোট দুইভাবে হিসাব করে মিলিয়ে দেখা (cross-check); আর অন্য একজনকে দিয়ে যাচাই করানো।
মূল উপলব্ধি: স্প্রেডশিট সহজ বলেই এর ভুলকে আমরা হালকাভাবে নিই। কিন্তু যে ফাইলের ফলে টাকা, নীতি বা মানুষের জীবন নির্ভর করে, তাকে প্রোগ্রামের মতোই পরীক্ষা ও যাচাই করতে হয়।
প্র ০৪স্প্রেডশিট কি একটি প্রোগ্রামিং ভাষা? যাঁরা Excel-এ সূত্র লেখেন, তাঁরা কি প্রোগ্রামার?
ভেবে দেখুন, সূত্র লেখার সময় আপনি আসলে কী করছেন। আপনি কম্পিউটারকে নির্দেশ দিচ্ছেন — “এই ঘরের মান ওই দুটি ঘরের গুণফল”, “নম্বর ৮০ বা বেশি হলে A+, নইলে…”। এখানে আছে ভ্যারিয়েবলের মতো জিনিস (ঘর), ফাংশন, শর্ত (IF), আর একটি ঘরের ফল আরেকটির উপকরণ। প্রোগ্রামিংয়ের অনেক মৌলিক ধারণাই এখানে উপস্থিত।
তবে ধরনটা আলাদা। সাধারণ প্রোগ্রামে (যেমন C বা Python) আপনি ধাপগুলোর ক্রম লেখেন — “আগে এটা করো, তারপর ওটা”। স্প্রেডশিটে আপনি শুধু সম্পর্ক লেখেন — “D2 = B2 × C2”; কখন, কোন ক্রমে হিসাব হবে, তা Excel নিজে নির্ভরতা দেখে ঠিক করে। কম্পিউটার বিজ্ঞানে এই ধরনকে বলা হয় declarative বা dataflow/reactive প্রোগ্রামিং, আর সূত্রগুলো মূলত functional — প্রতিটি সূত্র ইনপুট নিয়ে ফল দেয়, অন্য কিছু বদলায় না।
দীর্ঘদিন একটি সীমাবদ্ধতা ছিল — সূত্র দিয়ে নিজের নতুন ফাংশন বানানো যেত না; তার জন্য আলাদা ভাষা VBA লাগত। ২০২০ সালের শেষে Microsoft ঘোষণা করে LAMBDA ফাংশন — সূত্রের ভাষাতেই নিজের ফাংশন বানানো, নাম দেওয়া, এমনকি ফাংশন নিজেকে নিজে ডাকতে পারে (recursion). পরের কয়েক বছরে এটি Microsoft 365-এর ব্যবহারকারীদের কাছে পৌঁছায়। Microsoft তখন দাবি করে, এর ফলে Excel-এর সূত্রের ভাষা Turing-complete হলো — অর্থাৎ তাত্ত্বিকভাবে, যথেষ্ট সময় আর মেমরি পেলে, যেকোনো প্রোগ্রাম যা হিসাব করতে পারে, এটিও তা পারে (Turing machine-এর ধারণা পর্ব ০১-এ দেখেছেন)। “তাত্ত্বিকভাবে” শব্দটি গুরুত্বপূর্ণ — এর মানে এই নয় যে Excel-এ বড় সফটওয়্যার বানানো সুবিধাজনক।
তাহলে উত্তর? সূত্র লেখা অবশ্যই এক ধরনের প্রোগ্রামিং — আর এর ঝুঁকিও প্রোগ্রামিংয়ের মতো: bug, পরীক্ষা না করা, অন্যের বুঝতে না পারা। পার্থক্য হলো প্রকৌশলের অভ্যাসে — version control, পরীক্ষা, ডকুমেন্টেশন সাধারণ স্প্রেডশিটে প্রায় থাকে না।
মূল উপলব্ধি: যিনি IF আর SUMIF দিয়ে একটি রেজাল্ট শিট বানাতে পারেন, তিনি প্রোগ্রামিংয়ের মূল চিন্তা — ইনপুট, শর্ত, নির্ভরতা, পরীক্ষা — ইতিমধ্যে শিখে ফেলেছেন। পর্ব ৩৮-এ এই চিন্তাকেই অ্যালগরিদম আর প্রোগ্রামিং ভাষায় নিয়ে যাবেন।
প্র ০৫বাংলাদেশের হিসাবরক্ষক আর ছোট ব্যবসা এখনো Excel-এর ওপর এত নির্ভর করে কেন? ক্লাউড অ্যাকাউন্টিং কি সেই জায়গা নেবে?
বাংলাদেশে গার্মেন্টস কারখানার বেতনের হিসাব, NGO-র প্রকল্পের বাজেট, পাইকারি দোকানের বাকির খাতা, স্কুলের রেজাল্ট — খোঁজ নিলে দেখবেন একটি বড় অংশ চলছে Excel-এ। কারণগুলো বোধগম্য:
- পরিচিতি: প্রায় সব কম্পিউটার-প্রশিক্ষণ আর চাকরির পরীক্ষায় Excel থাকে। নতুন কর্মী এলে তাঁকে আলাদা করে শেখাতে হয় না।
- নমনীয়তা: প্রতিটি ব্যবসার নিজস্ব নিয়ম — বাকির হিসাব, কমিশন, ঈদের বোনাস। Excel-এ নিজের মতো ছক বানানো যায়; তৈরি সফটওয়্যার সবসময় সেই নিয়মে মেলে না।
- ইন্টারনেট ও খরচ: Excel ইন্টারনেট ছাড়া চলে। অনেক ক্লাউড সফটওয়্যারের মাসিক চাঁদা বৈদেশিক মুদ্রায়, যা ছোট ব্যবসার কাছে বাড়তি বোঝা।
কিন্তু দুর্বলতাও স্পষ্ট। কে কখন কোন সংখ্যা বদলাল, তার নির্ভরযোগ্য হিসাব (audit trail) থাকে না; ফাইলের নাম হয় “হিসাব_final_নতুন_আসল.xlsx”; কয়েকজন একসাথে কাজ করলে কোন কপিটি সঠিক, বোঝা যায় না; ল্যাপটপ চুরি গেলে বা হার্ডডিস্ক নষ্ট হলে ব্যাকআপ না থাকলে বছরের হিসাব শেষ।
এখানেই আসে হিসাবরক্ষণের বিশেষায়িত সফটওয়্যার — বাংলাদেশে বহু প্রতিষ্ঠান Tally-র মতো ডেস্কটপ অ্যাকাউন্টিং সফটওয়্যার ব্যবহার করে, আর এখন নানা ক্লাউড অ্যাকাউন্টিং সেবা আসছে, যেখানে প্রতিটি লেনদেন নিয়ম মেনে খাতায় ওঠে, হিসাবের নিয়ম (double-entry) সফটওয়্যারই রক্ষা করে, আর যেকোনো জায়গা থেকে দেখা যায়। কর আর VAT-এর অনলাইন রিটার্ন, ডিজিটাল পেমেন্ট আর ব্যাংকের অনলাইন সেবা বাড়ার সাথে সাথে এই দিকে চাপও বাড়ছে।
তবু বাস্তবে যা দেখা যায়, তা প্রতিস্থাপন নয়, সহাবস্থান: মূল খাতা চলে অ্যাকাউন্টিং সফটওয়্যারে, আর বিশ্লেষণ, পরিকল্পনা, “যদি এমন হয়” হিসাব — সেই সফটওয়্যার থেকে ডেটা বের করে Excel-এ। পর্ব ১৫-এ ডিজিটাল সেবা আর পর্ব ৩৫-এ ক্লাউড কম্পিউটিংয়ের এই পরিবর্তন আরও দেখবেন।
মূল উপলব্ধি: Excel টিকে আছে কারণ এটি নমনীয়, পরিচিত আর সস্তা। ভবিষ্যতের দক্ষ কর্মী তিনিই, যিনি জানেন কোন কাজ স্প্রেডশিটে মানায়, কোনটির জন্য নিয়ন্ত্রিত সফটওয়্যার বা ডেটাবেস দরকার — আর দুইয়ের মধ্যে ডেটা নিরাপদে আনা-নেওয়া করতে পারেন।
অনুশীলন
Excel বা Google Sheets (sheets.new লিখে ব্রাউজারে খুললেই একটি নতুন শিট) খুলে হাতে-কলমে করুন।
-
রেজাল্ট শিট: পর্বের রেজাল্ট শিটটি নিজে বানান (৪ জন, ৩ বিষয়)। মোট, গড় (১ দশমিক), nested IF দিয়ে গ্রেড, আর কোনো বিষয়ে ৩৩-এর কম থাকলে F — সবকিছু সূত্রে। শেষে মোট নম্বর ধরে বড় থেকে ছোট sort করুন।
E2:
=SUM(B2:D2); F2:=ROUND(AVERAGE(B2:D2),1); G2:=IF(MIN(B2:D2)<33,"F",IF(F2>=80,"A+",IF(F2>=70,"A",IF(F2>=60,"A-",IF(F2>=50,"B",IF(F2>=40,"C",IF(F2>=33,"D","F"))))))). তিনটি ঘর একসাথে বাছাই করে fill handle-এ ডাবল-ক্লিক করলে সব সারিতে নেমে যাবে। ফল: রিয়া A+, তানভীর A-, সুমাইয়া B, জাহিদ F (ইংরেজিতে ২৮)। Sort করার সময় পুরো টেবিল (A1:G5) বাছাই করে Data → Sort → “My data has headers” → মোট → Largest to Smallest. -
বাজেট আর absolute reference: পর্বের পারিবারিক বাজেট বানিয়ে C কলামে প্রতিটি খরচের শতাংশ একটি সূত্রে লিখে নিচে টানুন। তারপর ইচ্ছা করে
$মুছে আবার টেনে দেখুন কী হয়, আর কেন।C6-এ
=B6/$B$4, Percentage ফরম্যাট, তারপর C12 পর্যন্ত টানুন: 30%, 28%, 7%, 6%, 12%, 2.4%, 4%.$ছাড়া=B6/B4লিখে টানলে C7-এ হবে=B7/B5— B5 খালি, তাই#DIV/0!; C8-এ=B8/B6→ 3500/15000 ≈ 23% — ভুল কিন্তু এরর নেই, যা আরও বিপজ্জনক। এখান থেকে শিক্ষা: যে ঘর সব সারির জন্য একই (মোট আয়, VAT হার), তাকে সবসময় আটকে দিন। -
দোকানের সারাংশ: পর্বের ৬ লাইনের বিক্রির খাতা বানান। F2:F5-এ চাল, ডাল, তেল, ডিম লিখে G কলামে একটি সূত্র লিখে নিচে টেনে প্রতিটি পণ্যের মোট বিক্রি বের করুন। G কলামের যোগফল দিনের মোটের সমান হয় কি না, মিলিয়ে দেখুন।
G2:
=SUMIF($A$2:$A$7,F2,$D$2:$D$7), নিচে টানলে চাল 2450, ডাল 880, তেল 760, ডিম 360. যোগফল=SUM(G2:G5)= 4450 — দিনের মোটের সাথে মিলে গেল। এই মিলিয়ে দেখাকেই বলে cross-check: দুটি আলাদা পথে একই সংখ্যা এলে ভুলের সম্ভাবনা অনেক কমে। না মিললে সাধারণত কারণ — কোনো পণ্যের নামে বাড়তি স্পেস বা বানানভেদ (“চাল ” বা “চাউল”); তখনTRIMবা Filter দিয়ে নামগুলো দেখুন। -
বিদ্যুৎ বিল ক্যালকুলেটর: পর্বের উদাহরণের দর (৫, ৭, ১০ টাকা) তিনটি আলাদা ঘরে রেখে, সেই ঘরগুলোকে রেফার করে nested IF লিখুন। ৮০, ১০০, ১৫০, ২০০, ২৫০ ইউনিটের বিল বের করুন, আর ১০০ ও ২০০-এর সীমানায় ফল ঠিক আছে কি না দেখুন।
ধরুন F1 = 5, F2 = 7, F3 = 10, আর ইউনিট A2 থেকে নিচে। B2:
=IF(A2<=100, A2*$F$1, IF(A2<=200, 100*$F$1+(A2-100)*$F$2, 100*$F$1+100*$F$2+(A2-200)*$F$3)). ফল: ৮০ → 400, ১০০ → 500, ১৫০ → 850, ২০০ → 1200, ২৫০ → 1700. সীমানায় ঠিক আছে কি না বোঝার উপায়: ১০০ ইউনিটে দুই সূত্রেরই একই ফল আসা উচিত (100×5 = 500, আর 100×5 + 0×7 = 500).
নিজেকে যাচাই করুন
ভুল হলে কারণসহ ব্যাখ্যা পাবেন, আবার চেষ্টাও করতে পারবেন।
ক্রমExcel একটি সূত্রের কোন অংশ আগে হিসাব করে? প্রথম থেকে শেষ ক্রমে সাজান (▲▼ চেপে সরান)
- বন্ধনীর ভেতরের অংশ —
( ) - ঘাত —
^ - গুণ আর ভাগ —
*/ - যোগ আর বিয়োগ —
+- - লেখা জোড়া —
& - তুলনা —
=><
C2 ঘরে সূত্র =B2*$F$1. এটি কপি করে C5 ঘরে বসালে সূত্রটি কী হবে?
=B2*$F$1=B5*$F$1=B5*$F$4=B5*F4
A1:A6 ঘরগুলোতে আছে 10, 20, "অনুপস্থিত", 30, খালি, 40. =COUNT(A1:A6)-এর ফল কত?
- 4
- 5
- 6
- 100
একটি ঘরে =B4/C4 লেখার পর ফল এলো #DIV/0!. সবচেয়ে সম্ভাব্য কারণ কী?
- ফাংশনের নামের বানান ভুল
- কলাম খুব সরু
- C4 ঘরটি শূন্য বা খালি
- B4 ঘরের সারি মুছে ফেলা হয়েছে
একটি বিক্রির খাতায় A কলামে পণ্যের নাম, D কলামে বিক্রির টাকা (সারি ২ থেকে ১০০)। শুধু “চাল”-এর মোট বিক্রি বের করার সঠিক সূত্র কোনটি?
=COUNTIF(A2:A100,"চাল")=SUM(D2:D100)=SUMIF(D2:D100,"চাল",A2:A100)=SUMIF(A2:A100,"চাল",D2:D100)
স্প্রেডশিটে 01712345678 টাইপ করার পর ঘরে দেখা যাচ্ছে 1712345678. শুরুর ০ ধরে রাখার সঠিক উপায় কোনটি?
- কলামটি চওড়া করা
- টাইপের আগে ঘরের ফরম্যাট Text করা, বা শুরুতে ' চিহ্ন দেওয়া
- ফরম্যাট Percentage করা
- =ROUND() ফাংশন ব্যবহার করা
Excel-এ =10+20/5*2 সূত্রের ফল কত?
- 12
- 3
- 18
- 8
শব্দকোষ
লেখার মধ্যে ডটেড দাগ দেওয়া শব্দে মাউস রাখুন বা চাপুন — অর্থ দেখাবে। এই পর্বের সব নতুন শব্দ এখানে একসাথে:
মনে রাখুন
- স্প্রেডশিট = ঘরের জাল: কিছু ঘরে ডেটা, কিছু ঘরে সূত্র; একটি মান বদলালে নির্ভরশীল সব ফল নিজে থেকে আবার হিসাব হয়।
- ঠিকানা = কলামের অক্ষর + সারির নম্বর (
B3); রেঞ্জB3:D10. ফোন বা NID নম্বর রাখুন Text হিসেবে। - সূত্র শুরু
=দিয়ে; বন্ধনী →^→ গুণ-ভাগ → যোগ-বিয়োগ। সংখ্যা নয়, ঘরের ঠিকানা লিখুন। $আটকায়:B2কপিতে সরে,$F$1সরে না,F$1/$F1আধা-আটকানো; F4 দিয়ে বদলান।- SUM, AVERAGE, COUNT, IF, SUMIF-এ বেশিরভাগ কাজ হয়; এরর মানে সূত্র আপনাকে কিছু বলছে — আর AI-এর দেওয়া সূত্র নমুনা সারিতে মিলিয়ে তবেই ব্যবহার করুন।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- পর্ব ১১ · Excel গভীরে — XLOOKUP, pivot table, chart আর data validationপরবর্তী পর্বখোঁজা, সারাংশ, চার্ট আর ডেটা যাচাই।
- কম্পিউটার ফান্ডামেন্টালস ও ICT · কোর্স হোম৫৫টি পর্বপুরো কোর্সের রোডম্যাপ — কোন পর্ব কখন।
- DBMS ও SQLগভীরে যানস্প্রেডশিটের টেবিল যখন ছোট হয়ে আসে — আসল ডেটাবেস, key আর query.
- Python প্রোগ্রামিংপাশের ট্র্যাকডেটা নিয়ে কাজ স্বয়ংক্রিয় করতে, হাজার ফাইল একসাথে সামলাতে।