এক্সেল বেশ কিছু গণনা ও টেমপ্লেট অটোমেট করার জন্য একটি দুর্দান্ত টুল। এক্সেলের মাধ্যমে আপনি বহু ধরনের মাসিক ক্যালেন্ডার তৈরি করতে পারেন। আপনি যদি এজন্য উপায় খুঁজছেন, তবে আপনি সঠিক জায়গায় আসলাম। এই আর্টিকেলে আমি এক্সেলে মাসিক ক্যালেন্ডার তৈরির ৩টি কার্যকর উপায় দেখাব।
আপনি আমাদের প্র্যাকটিস ওয়ার্কবুক বিনামূল্যে এখান থেকে ডাউনলোড করতে পারেন!
এক্সেলে মাসিক ক্যালেন্ডার তৈরির ৩টি কার্যকর উপায়
১. এক্সেল টেমপ্লেট থেকে মাসিক ক্যালেন্ডার তৈরি করা
এক্সেলের নিজস্ব কিছু প্রি-মেড (pre-made) টেমপ্লেট আছে ক্যালেন্ডারের জন্য। আপনি নিচের পদ্ধতিগুলো অনুসরণ করে সেসব টেমপ্লেট যেকোনো একটি থেকে মাসিক ক্যালেন্ডার তৈরি করতে পারেন।
📌 ধাপসমূহ:
- প্রথমে এবং সর্বশেষ, File ট্যাবে যান।

- उसके बाद, এক্সপ্যান্ডেড File ট্যাব থেকে New অপশন বেছে নিন।
- পরবর্তী, একটি New উইন্ডো প্রদর্শিত হবে।
- তারপর, সার্চ বক্স (search box)-এ calendar লিখে Start searching আইকনে ক্লিক করুন।

- ফলস্বরূপ, উপলব্ধ টেমপ্লেটগুলো আপনাকে পরামর্শ হিসেবে দেখাবে।

- এখন, আপনার পছন্দের যেকোনো টেমপ্লেট বেছে নিয়ে Create বাটনে ক্লিক করুন।

পরिणামস্বরূপ, আপনি একটি নতুন এক্সেল উইন্ডোতে টেমপ্লেট অনুযায়ী একটি ক্যালেন্ডার দেখতে পাবেন। আমাদের বেছে নেওয়া টেমপ্লেটের জন্য, ফলাফল নিচের মত হবে।

আরও পড়ুন: টেমপ্লেট ছাড়া এক্সেলে ক্যালেন্ডার তৈরির পদ্ধতি (২টি উদাহরণ)
২. এক্সেল ২০০৩ | ২০০৭ | ২০১০ | ২০১৩ | ২০১৬ এবং পরবর্তী সংস্করণে কাস্টম মাসিক ক্যালেন্ডার তৈরি করা
এখন, এটি হতে পারে যে আপনাকে কোনো প্রি-মেড টেমপ্লেট পছন্দ না আসে, বরং আপনি আপনার পছন্দ অনুযায়ী নিজের মাসিক ক্যালেন্ডার তৈরি করতে চান। এই বিষয়ে, নিচের ধাপগুলো অনুসরণ করে আপনি এক্সেলে মাসিক ক্যালেন্ডার তৈরি করতে পারেন।
📌 ধাপসমূহ:
- প্রথমে, আপনার মাসের জন্য হেডার তৈরি করুন এবং ৭টি সারি ও ৭টি কলাম নির্বাচন করুন।

- পরবর্তী, নির্বাচনের উপর Home ট্যাব থেকে All Borders আইকনে ক্লিক করুন।

- ফলস্বরূপ, সকল সেলে সব বর্ডার থাকবে।
- তারপর, প্রথম নির্বাচিত সারিতে সপ্তাহের দিনের নাম লিখুন এবং আপনার ইচ্ছা অনুযায়ী সেগুলো ফরম্যাট করুন।

- এখন, অন্যান্য ৬টি সারি ও ৭টি কলাম নির্বাচন করুন >> Home ট্যাব >> Cells গ্রুপ >> Format টুল >> Row Height… অপশনে যান।

- ফলস্বরূপ, Row Height উইন্ডো প্রদর্শিত হবে।
- Row height: টেক্সট বক্সে মান 40 দিন এবং OK বাটনে ক্লিক করুন।

- পরবর্তী, আগের নির্বাচনের উপর Home ট্যাব >> Cells গ্রুপ >> Format টুল >> Column Width… অপশনে যান।

- ফলস্বরূপ, Column Width উইন্ডো প্রদর্শিত হবে।
- পরবর্তী, Column width: টেক্সট বক্সে মান 12 দিন এবং OK বাটনে ক্লিক করুন।

- এখন, আগের নির্বাচনের উপর রাইট-ক্লিক (right-click) করুন এবং কনটেক্সট মেনু থেকে Format Cells… অপশন বেছে নিন।

- এই মুহূর্তে, Format Cells উইন্ডো প্রদর্শিত হবে।
- পরবর্তী, Alignment ট্যাবে যান >> Horizontal: অপশন লিস্ট থেকে Right (Indent) বেছে নিন >> Vertical: অপশন লিস্ট থেকে Top বেছে নিন >> OK বাটনে ক্লিক করুন।

অতএব, আপনার ক্যালেন্ডার ফরম্যাটিং সম্পূর্ণ প্রস্তুত। এখন, গুগলে আগামী বছরের আগামী মাসের প্রথম দিন খুঁজে বের করুন এবং সপ্তাহের দিন অনুযায়ী মানগুলো দিন। শেষে, মাসিক ক্যালেন্ডারটি এরকম দেখাবে।

আরও পড়ুন: ইন্টারেক্টিভ ক্যালেন্ডার এক্সেলে তৈরির পদ্ধতি (২টি সহজ উপায়)
৩. VBA ব্যবহার করে মাসিক ক্যালেন্ডার তৈরি করা
মাসিক ক্যালেন্ডার তৈরির আরেকটি উপায় হলো VBA কোড ব্যবহার করা। আপনি নিচের ধাপগুলো অনুসরণ করে এটি সম্পন্ন করতে পারেন।
📌 ধাপসমূহ:
- সর্বশেষে, একটি নতুন ওয়ার্কশীট তৈরি করুন এবং Developer ট্যাব >> Visual Basic টুলে যান।

- ফলস্বরূপ, Microsoft Visual Basic for Applications উইন্ডো প্রদর্শিত হবে।
- পরবর্তী, Insert ট্যাব >> Module অপশন বেছে নিন।

- ফলস্বরূপ, Module1 নামে একটি নতুন মডিউল তৈরি হয়েছে।
- পরবর্তী, Module1-এ ডাবল-ক্লিক (double-click) করুন এবং নিচের VBA কোডটি কোড উইন্ডোতে লিখুন।

এই VBA কোডটি এই docs.microsoft.com- থেকে নেওয়া হয়েছে।
Sub CalendarMaker() ActiveSheet.Protect DrawingObjects:=False, Contents:=False, _ Scenarios:=False Application.ScreenUpdating = False On Error GoTo MyErrorTrap Range("a1:g14").Clear MyInput = InputBox("Type in months and years") If MyInput = "" Then Exit Sub StartDay = DateValue(MyInput) If Day(StartDay) <> 1 Then StartDay = DateValue(Month(StartDay) & "/1/" & _ Year(StartDay)) End If Range("a1").NumberFormat = "mmmm yyyy" With Range("a1:g1") .HorizontalAlignment = xlCenterAcrossSelection .VerticalAlignment = xlCenter .Font.Size = 18 .Font.Bold = True .RowHeight = 35 End With With Range("a2:g2") .ColumnWidth = 11 .VerticalAlignment = xlCenter .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .Orientation = xlHorizontal .Font.Size = 12 .Font.Bold = True .RowHeight = 20 End With Range("a2") = "Sunday" Range("b2") = "Monday" Range("c2") = "Tuesday" Range("d2") = "Wednesday" Range("e2") = "Thursday" Range("f2") = "Friday" Range("g2") = "Saturday" With Range("a3:g8") .HorizontalAlignment = xlRight .VerticalAlignment = xlTop .Font.Size = 18 .Font.Bold = True .RowHeight = 21 End With Range("a1").Value = Application.Text(MyInput, "mmmm yyyy") DayofWeek = Weekday(StartDay) CurYear = Year(StartDay) CurMonth = Month(StartDay) FinalDay = DateSerial(CurYear, CurMonth + 1, 1) Select Case DayofWeek Case 1 Range("a3").Value = 1 Case 2 Range("b3").Value = 1 Case 3 Range("c3").Value = 1 Case 4 Range("d3").Value = 1 Case 5 Range("e3").Value = 1 Case 6 Range("f3").Value = 1 Case 7 Range("g3").Value = 1 End Select For Each cell In Range("a3:g8") RowCell = cell.Row ColCell = cell.Column If cell.Column = 1 And cell.Row = 3 Then ElseIf cell.Column <> 1 Then If cell.Offset(0, -1).Value >= 1 Then cell.Value = cell.Offset(0, -1).Value + 1 If cell.Value > (FinalDay - StartDay) Then cell.Value = "" Exit For End If End If ElseIf cell.Row > 3 And cell.Column = 1 Then cell.Value = cell.Offset(-1, 6).Value + 1 If cell.Value > (FinalDay - StartDay) Then cell.Value = "" Exit For End If End If Next For x = 0 To 5 Range("A4").Offset(x * 2, 0).EntireRow.Insert With Range("A4:G4").Offset(x * 2, 0) .RowHeight = 65 .HorizontalAlignment = xlCenter .VerticalAlignment = xlTop .WrapText = True .Font.Size = 10 .Font.Bold = False .Locked = False End With With Range("A3").Offset(x * 2, 0).Resize(2, _ 7).Borders(xlLeft) .Weight = xlThick .ColorIndex = xlAutomatic End With With Range("A3").Offset(x * 2, 0).Resize(2, _ 7).Borders(xlRight) .Weight = xlThick .ColorIndex = xlAutomatic End With Range("A3").Offset(x * 2, 0).Resize(2, 7).BorderAround _ Weight:=xlThick, ColorIndex:=xlAutomatic Next If Range("A13").Value = "" Then Range("A13").Offset(0, 0) _ .Resize(2, 8).EntireRow.Delete ActiveWindow.DisplayGridlines = False ActiveSheet.Protect DrawingObjects:=True, Contents:=True, _ Scenarios:=True ActiveWindow.WindowState = xlMaximized ActiveWindow.ScrollRow = 1 Application.ScreenUpdating = True Exit Sub MyErrorTrap: MsgBox "You may not have entered your Month and Year correctly." _ & Chr(13) & "Spell the Month correctly" _ & " (or use 3 letter abbreviation)" _ & Chr(13) & "and 4 digits for the Year" MyInput = InputBox("Type in Month and year for Calendar") If MyInput = "" Then Exit Sub Resume End Sub
- পরবর্তী, Ctrl+S চাপুন।
- এই মুহূর্তে, একটি Microsoft Excel ডায়ালগ বক্স প্রদর্শিত হবে। এখানে No বাটনে ক্লিক করুন।

- ফলস্বরূপ, Save As ডায়ালগ বক্স প্রদর্শিত হবে।
- পরবর্তী, Save as type: অপশনটি .xlsm হিসেবে বেছে নিয়ে Save বাটনে ক্লিক করুন।

- এখন, কোড উইন্ডো বন্ধ করুন এবং Developer ট্যাব >> Macros টুলে যান।

- ফলস্বরূপ, Macro উইন্ডো প্রদর্শিত হবে।
- পরবর্তী, CalendarMaker ম্যাক্রো বেছে নিয়ে Run বাটনে ক্লিক করুন।

- ফলস্বরূপ, একটি Microsoft Excel ডায়ালগ বক্স প্রদর্শিত হবে।
- এখানে, মাসের প্রথম ৩ অক্ষর এবং বছরের ৪ সংখ্যা লিখুন।
- শেষে, OK বাটনে ক্লিক করুন।

অতএব, আপনি আপনার ওয়ার্কশীতে আগামী মাসের ক্যালেন্ডার তৈরি হয়েছে দেখবেন এবং ফলাফলটি এরকম দেখাবে।

ফর্মুলা ব্যবহার করে এক্সেলে ইন্টারেক্টিভ/ডাইনামিক ক্যালেন্ডার তৈরি করা
এখন, আপনি যদি ফর্মুলা ব্যবহার করে এক্সেলে একটি ইন্টারেক্টিভ/ডাইনামিক ক্যালেন্ডার তৈরি করতে চান, তবে আপনাকে কিছু অতিরিক্ত কাজ করতে হবে। এটি অর্জন করার জন্য নিচের ধাপগুলো সাবধানে অনুসরণ করুন।
📌 ধাপসমূহ:
- প্রথমে, দুটি হেল্পার টেবিল তৈরি করুন, একটি ছুটির তালিকার সাথে এবং অন্যটি মাসের নামের তালিকার সাথে।

- এখন, আপনার পছন্দ অনুযায়ী একটি কাস্টম মাসিক ক্যালেন্ডার টেমপ্লেট তৈরি করুন।
- পরবর্তী, ডাইনামিক উদ্দেশ্যে, আমরা এখন মাসের নাম অটোমেট করতে চাই।
- এটি করতে, H4 সেলটি নির্বাচন করুন >> Data ট্যাব >> Data Tools গ্রুপ >> Data Validation টুল >> Data Validation… অপশনে যান।

- পরবর্তী, Data Validation উইন্ডো প্রদর্শিত হবে।
- পরবর্তী, এখানে Settings ট্যাবে যান >> Allow: অপশন লিস্ট থেকে List অপশন বেছে নিন >> Source: টেক্সট বক্সে E5:E16 সেলগুলো রেফার করুন >> OK বাটনে ক্লিক করুন।

- ফলস্বরূপ, আপনি দেখবেন H4 সেলে একটি ড্রপ-ডাউন লিস্ট থাকবে এবং আপনি ক্লিক করে মাস নির্বাচন করতে পারবেন।

- মাস জানুয়ারি (Jan) বেছে নিয়ে, B6 সেলে ক্লিক করুন এবং নিচের ফর্মুলা ইনসার্ট করুন।
=IF(MONTH(DATE($D$4,MATCH($H$4,'Helper Columns'!$E$5:$E$16,0),1)+SEQUENCE(6,7)-WEEKDAY(DATE($D$4,MATCH($H$4,'Helper Columns'!$E$5:$E$16,0),1),2))=MATCH($H$4,'Helper Columns'!$E$5:$E$16,0),DATE($D$4,MATCH($H$4,'Helper Columns'!$E$5:$E$16,0),1)+SEQUENCE(6,7)-WEEKDAY(DATE($D$4,MATCH($H$4,'Helper Columns'!$E$5:$E$16,0),1),2),"")- পরবর্তী, Enter বাটন চাপুন।

- অতএব, আপনি সপ্তাহের দিন অনুযায়ী সঠিকভাবে আপনি আগামী মাসের সব তারিখ পাবেন।
- কিন্তু, মানগুলো সঠিক ফরম্যাটে নেই।
- এটি সংশোধন করতে, পুরো B6:H11 নির্বাচনে রাইট-ক্লিক (right-click) করুন এবং কনটেক্সট মেনু থেকে Format Cells… অপশন বেছে নিন।

- ফলস্বরূপ, Format Cells ডায়ালগ বক্স প্রদর্শিত হবে।
- Number ট্যাবে যান >> Category: প্যান থেকে Custom অপশন বেছে নিন >> Type: টেক্সট বক্সে dd লিখুন >> OK বাটনে ক্লিক করুন।

- অতএব, আপনার ক্যালেন্ডারের তারিখগুলো সঠিকভাবে ফরম্যাটেড হয়েছে এবং আপনি আগামী মাসের পূর্ণ ক্যালেন্ডার দেখতে পাচ্ছেন।

- এখন, সপ্তাহান্তগুলো ভিন্নভাবে চিহ্নিত করতে, সপ্তাহান্তের সেলগুলো নির্বাচন করুন >> Home ট্যাব >> Font গ্রুপ >> Fill Color আইকন >> Orange, Accent 2, Lighter 40% রঙ বেছে নিন।

- এখন, ছুটি দিনগুলো চিহ্নিত করতে, B6:H11 সেলগুলো নির্বাচন করুন >> Home ট্যাব >> Conditional Formatting টুল >> New Rule… অপশনে যান।

- ফলস্বরূপ, Edit Formatting Rule উইন্ডো প্রদর্শিত হবে।
- পরবর্তী, Select a Rule Type: অপশন লিস্ট থেকে শেষ অপশনটি বেছে নিন >> নিচের ফর্মুলাটি Format values where this formula is true: ফর্মুলা বারে লিখুন >> Format… অপশনে ক্লিক করুন।
=ISNUMBER(VLOOKUP('Dynamic Monthly Calender'!B6,'Helper Columns'!$C$5:$C$15,1,0))
- পরبری, প্রদর্শিত উইন্ডো থেকে Fill ট্যাবে যান >> red রঙ বেছে নিন >> OK বাটনে ক্লিক করুন।

- ফলস্বরূপ, প্রিভিউ সহ Edit Formatting Rule উইন্ডো আবার প্রদর্শিত হবে। OK বাটনে ক্লিক করুন।

অতএব, আপনি আপনার ইন্টারেক্টিভ মাসিক ক্যালেন্ডার পেয়েছেন যেখানে সপ্তাহান্তগুলো ভিন্ন রঙে এবং ছুটি দিনগুলোও ভিন্ন রঙে প্রদর্শিত হচ্ছে। আপনি H4 সেলে ড্রপ-ডাউন দিয়ে মাস পরিবর্তন করতে পারবেন এবং এতে সপ্তাহের দিন, সপ্তাহান্ত ও ছুটি দিনও ডাইনামিকভাবে পরিবর্তিত হবে।

এক্সেলে বার্ষিক ক্যালেন্ডার তৈরি করা
এখন, আপনি যদি এক্সেলে বার্ষিক ক্যালেন্ডার তৈরি করতে চান, তবে নিচের ধাপগুলো অনুসরণ করতে পারেন।
📌 ধাপসমূহ:
- সর্বশেষে, আপনার পছন্দ অনুযায়ী দিন ও মাসের জন্য একটি টেমপ্লেট তৈরি করুন।

- পরবর্তী, B6 সেলে ক্লিক করুন এবং নিচের ফর্মুলা ইনসার্ট করুন।
=IF(MONTH(DATE($B$3,MATCH($B$4,'Helper Columns'!$E$5:$E$16,0),1)+SEQUENCE(6,7)-WEEKDAY(DATE($B$3,MATCH($B$4,'Helper Columns'!$E$5:$E$16,0),1),2))=MATCH($B$4,'Helper Columns'!$E$5:$E$16,0),DATE($B$3,MATCH($B$4,'Helper Columns'!$E$5:$E$16,0),1)+SEQUENCE(6,7)-WEEKDAY(DATE($B$3,MATCH($B$4,'Helper Columns'!$E$5:$E$16,0),1),2),"")- পরবর্তী, Enter বাটন চাপুন।

- ফলস্বরূপ, আপনি দেখবেন নির্দিষ্ট মাসের নির্দিষ্ট দিন অনুযায়ী তারিখগুলো সেট হয়েছে।
- কিন্তু, কম জায়গা ও ফরম্যাটিং সমস্যায় এটি কখনো কখনো ### দেখাতে পারে।
- এটি সমাধান করতে, পুরো মাসের ডেটাসেট নির্বাচন করুন এবং সেলগুলিতে রাইট-ক্লিক (right-click) করুন।
- পরবর্তী, Format Cells… অপশন বেছে নিন।

- ফলস্বরূপ, Format Cells উইন্ডো প্রদর্শিত হবে।
- এখন, Number ট্যাবে যান >> Category: প্যান থেকে Custom অপশন বেছে নিন >> Type: টেক্সট বক্সে dd লিখুন >> OK বাটনে ক্লিক করুন।

- আগামী বছরের প্রতিটি মাসের জন্য এই প্রক্রিয়াগুলো दुहरান।
- অতএব, আপনি পুরো বছরের জন্য সপ্তাহের দিন অনুযায়ী তারিখগুলো পাবেন।

- এখন, সপ্তাহান্ত চিহ্নিত করতে, সপ্তাহান্তের সেলগুলো নির্বাচন করুন >> Home ট্যাব >> Font গ্রুপ >> Fill Color আইকন >> Orange, Accent 2, Lighter 40% রঙ বেছে নিন।

- পরবর্তী, জানুয়ারির ছুটি দিনগুলো চিহ্নিত করতে, মাসের সকল দিন নির্বাচন করুন >> Home ট্যাব >> Conditional Formatting টুল >> New Rule… অপশন বেছে নিন।

- ফলস্বরূপ, Edit Formatting Rule উইন্ডো প্রদর্শিত হবে।
- পরবর্তী, Select a Rule Type: অপশন থেকে শেষ অপশনটি বেছে নিন >> নিচের ফর্মুলাটি Format values where this formula is true: টেক্সট বক্সে ইনসার্ট করুন >> Format… বাটনে ক্লিক করুন।
=ISNUMBER(VLOOKUP(B6,'Helper Columns'!$C$5:$C$15,1,0))
- পরবর্তী, Fill ট্যাবে যান >> Red রঙ বেছে নিন >> OK বাটনে ক্লিক করুন।

- ফলস্বরূপ, প্রিভিউ সহ Edit Formatting Rule উইন্ডো আবার প্রদর্শিত হবে। OK বাটনে ক্লিক করুন।

এই প্রক্রিয়াগুলো অন্যান্য সব মাসের জন্য একই ফর্মুলা ও ফরম্যাট ব্যবহার করে ডাইনামিকভাবে দুहरান এবং এভাবে আপনি আপনার ডাইনামিক বার্ষিক ক্যালেন্ডার পাবেন।

আরও পড়ুন: এক্সেলে সাপ্তাহিক ক্যালেন্ডার তৈরির পদ্ধতি (৩টি উপযোগী উপায়)
এক্সেলে মাসিক শিডিউল তৈরি করা
আপনি এক্সেলে সহজে মাসিক শিডিউলও তৈরি করতে পারেন। এটি করতে নিচের ধাপগুলো সাবধানে অনুসরণ করুন।
📌 ধাপসমূহ:
- প্রাথমিকভাবে, File ট্যাবে যান।

- পরবর্তী, এক্সপ্যান্ডেড File ট্যাব থেকে New অপশন বেছে নিন >> সার্চ বক্সে Monthly Schedule লিখুন >> Start searching আইকনে ক্লিক করুন।

- ফলস্বরূপ, বেশ কিছু টেমপ্লেট প্রদর্শিত হবে।
- পরবর্তী, 12-Month Calendar টেমপ্লেটে ক্লিক করুন।

- পরবর্তী, Create বাটনে ক্লিক করুন।

ফলস্বরূপ, একটি নতুন এক্সেল ফাইল তৈরি হবে এবং এভাবে আপনি এক্সেলে আপনার কাঙ্ক্ষিত মাসিক শিডিউল পাবেন।

উপসংহার
তাহলে, এই আর্টিকেলে আমি আপনাকে দেখিয়েছি কিভাবে এক্সেলে মাসিক ক্যালেন্ডার তৈরি করবেন। আমি আপনাকে পরামর্শ দিচ্ছি পুরো আর্টিকেলটি সাবধানে পড়ুন এবং জ্ঞানটি আপনার প্রয়োজন অনুযায়ী প্রয়োগ করুন। আপনি আমাদের বিনামূল্যে ওয়ার্কবুক ডাউনলোড করে প্র্যাকটিসও করতে পারেন। আশা করি এই আর্টিকেলটি আপনার জন্য উপকারী ও তথ্য সমৃদ্ধ হবে। আপনার আরও কোনো প্রশ্ন বা পরামর্শ থাকলে, অনুগ্রহ করে এখানে কমেন্ট করুন।
এবং, এক্সেল সম্পর্কে আরও অনেক কিছু শিখতে ExcelDemy-এ ভিজিট করুন! আপনার দিন শুভ হোক!
সম্পর্কিত আর্টিকেল
- এক্সেলে খালি ক্যালেন্ডার তৈরির পদ্ধতি (ফ্রি টেমপ্লেট ডাউনলোড)