एक एक्सेल यदि आप आगे की योजना बनाना और व्यस्त कार्यक्रम रखना पसंद करते हैं तो कैलेंडर बहुत मददगार हो सकता है। इसे याद करते हुए, इस लेख में, हम एक्सेल में एक वार्षिक कैलेंडर कैसे बनाएं के स्पष्टीकरण के साथ चरणों का अध्ययन करेंगे। . दिलचस्प बात यह है कि यह कैलेंडर गतिशील और इंटरैक्टिव है। इसका मतलब है कि जब आप वर्ष का मान बदलते हैं तो कैलेंडर स्वयं अपडेट हो जाता है। इसके अलावा, हम यह भी चर्चा करेंगे कि एक्सेल VBA . का उपयोग करके मासिक कैलेंडर कैसे बनाया जाए ।
आप नीचे दिए गए लिंक से अभ्यास कार्यपुस्तिका डाउनलोड कर सकते हैं।
एक्सेल में वार्षिक कैलेंडर बनाने के 4 चरण
अब, इससे पहले कि हम इस ट्यूटोरियल का गहन विश्लेषण करें, मैं आपको दिखाता हूँ कि अंतिम आउटपुट कैसा दिखेगा। यहां, हमारे पास एक वार्षिक कैलेंडर है, जहां शनिवार और रविवार (सप्ताहांत) हल्के नारंगी रंग में दिखाए जाते हैं जबकि छुट्टियां चमकीले नारंगी रंग में दिखाई देते हैं।
यहाँ, हमने Microsoft Excel 365 . का उपयोग किया है संस्करण, आप अपनी सुविधा के अनुसार किसी अन्य संस्करण का उपयोग कर सकते हैं।
📌 चरण 01:प्राथमिक रूपरेखा बनाएं
- पहले चरण में, हम महीने को विभाजित करके कैलेंडर की रूपरेखा तैयार करेंगे 3 कॉलम और 4 पंक्तियों में।
- अगला, सप्ताह . में 7 दिन दर्ज करें और सप्ताहांत को हाइलाइट करें , इस मामले में, शनिवार और रविवार ।
और पढ़ें: एक्सेल में साप्ताहिक कैलेंडर कैसे बनाएं (3 उपयुक्त तरीके)
📌 चरण 02:महीने के नाम दर्ज करें :
- दूसरा, B4 . पर जाएं सेल>> नंबर टाइप करें 1 >> CTRL + 1 दबाएं आपके कीबोर्ड पर कुंजियां.
अब, इससे प्रारूप कक्ष खुल जाता है डायलॉग बॉक्स।
- शुरुआत में, नंबर . पर जाएं टैब>> कस्टम . चुनें विकल्प>> टाइप करें . में फ़ील्ड में, “जनवरी” enter दर्ज करें (उल्टे अल्पविराम के भीतर)>> अंत में, फ़ॉन्ट . पर जाएं टैब।
- अगला, बोल्ड-इटैलिक चुनें फ़ॉन्ट शैली >> एक रंग चुनें , यहां हमने बैंगनी चुना है>> ठीक . दबाएं बटन।
- बदले में, B4:H4 . चुनें कक्षों की श्रेणी>> CTRL + 1 दबाएं स्वरूप कक्षों पर नेविगेट करने के लिए कुंजियां खिड़की।
- इसके बाद, संरेखण के लिए आगे बढ़ें टैब>> क्षैतिज . में अनुभाग में, पूरे चयन के केंद्र . चुनें विकल्प>> ठीक press दबाएं बटन।
अंत में, यह महीने का नाम जनवरी display प्रदर्शित करना चाहिए जैसा कि नीचे चित्र में दिखाया गया है।
- इसी तरह, अन्य महीनों के लिए भी यही प्रक्रिया दोहराएं और आपका आउटपुट निम्न चित्र जैसा दिखना चाहिए।
और पढ़ें: बिना टेम्पलेट के एक्सेल में कैलेंडर कैसे बनाएं (2 उदाहरण)
📌 चरण 03:गतिशील कैलेंडर बनाने के लिए एक्सेल फ़ंक्शन का उपयोग करें
- तीसरा, B6 सेल में जाएं और नीचे दिया गया फॉर्मूला दर्ज करें।
=IF(MONTH(DATE($B$2,$B$4,1)+SEQUENCE(6,7)-WEEKDAY(DATE($B$2,$B$4,1),2))=$B$4,DATE($B$2,$B$4,1)+SEQUENCE(6,7)-WEEKDAY(DATE($B$2,$B$4,1),2),"")
यहां, B2 और B4 सेल वर्ष 2022 . को संदर्भित करते हैं और माह जनवरी . के क्रमशः।
📃 नोट: द अनुक्रम फ़ंक्शन एक्सेल 365, एक्सेल 2021 और वेब के लिए एक्सेल पर उपलब्ध है, इसलिए कृपया सुनिश्चित करें कि उसके पास संगत संस्करण है।
- अब, ENTER दबाएं कुंजी और सूत्र माह . के लिए सभी दिनों में पॉप्युलेट होगा जनवरी . का ।
📃 नोट: कृपया तारीख को बदलना सुनिश्चित करें केवल dd . को प्रारूपित करें प्रारूप कक्षों . में CTRL + 1 . दबाकर विंडो आपके कीबोर्ड पर कुंजियां.
अंत में, परिणाम नीचे दी गई छवि की तरह दिखना चाहिए।
📌 चरण 04:कैलेंडर में छुट्टियों को इंगित करें :
- चौथे और अंतिम चरण में, छुट्टियों की सूची बनाएं एक नई शीट में जैसा कि नीचे दिखाया गया है।
- फिर, B6:H11 . चुनें सेल>> सशर्त स्वरूपण . पर जाएं ड्रॉप-डाउन>> नया नियम चुनें विकल्प।
एक पल में, नया स्वरूपण नियम विज़ार्ड पॉप अप होता है।
- अगला, यह निर्धारित करने के लिए कि कौन से कक्षों को प्रारूपित करना है, एक सूत्र का उपयोग करें choose चुनें विकल्प।
- फिर, नियम विवरण . में निम्न सूत्र दर्ज करें।
=ISNUMBER(VLOOKUP(B6,Holidays!$C:$C,1,0))
यहां, B6 सेल सोमवार . की ओर इशारा करता है माह . में जनवरी . का जबकि छुट्टियां!$C:$C तिथियां . का प्रतिनिधित्व करता है छुट्टियों . में शीट।
फॉर्मूला ब्रेकडाउन:
- VLOOKUP(B6,Holidays!$C:$C,1,0)) → VLOOKUP फ़ंक्शन किसी तालिका के सबसे बाएं कॉलम में एक मान ढूंढता है, और फिर आपके द्वारा निर्दिष्ट कॉलम से उसी पंक्ति में एक मान देता है। यहां, B6 ( lookup_value तर्क) को छुट्टियों!$C:$C . से मैप किया गया है (table_array तर्क) सरणी। अगला, 1 (col_index_num तर्क) लुकअप मान के स्तंभ संख्या का प्रतिनिधित्व करता है। अंत में, 0 (range_lookup तर्क) सटीक मिलान . को संदर्भित करता है लुकअप मान का।
- आउटपुट → #N/A
- ISNUMBER(VLOOKUP(B6,Holidays!$C:$C,1,0)) → बन जाता है
- ISNUMBER(#N/A) → ISNUMBER फ़ंक्शन जांचता है कि कोई मान एक संख्या है या नहीं और TRUE . लौटाता है या गलत . यहां, #N/A मान है तर्क, और चूंकि यह एक संख्या नहीं है इसलिए फ़ंक्शन FALSE . लौटाता है ।
- आउटपुट → FALSE
अब, इसे 1 जनवरी . के अवकाश को हाइलाइट करना चाहिए चमकीले नारंगी रंग में।
इसी तरह की शैली में, अन्य महीनों के लिए भी यही प्रक्रिया दोहराएं और आपका आउटपुट नीचे दिखाए गए स्क्रीनशॉट जैसा दिखना चाहिए।
मासिक कैलेंडर कैसे बनाएं
क्या होगा यदि आप मासिक कैलेंडर बनाना चाहते हैं ? हमारी अगली विधि ने आपको कवर किया है! यहां, हम VBA कोड का उपयोग करेंगे हमारे लिए कार्य को स्वचालित करने के लिए, इसलिए आइए इसे क्रिया में देखें।
📌 कदम :
- सबसे पहले और सबसे महत्वपूर्ण, डेवलपर . पर नेविगेट करें टैब>> विजुअल बेसिक . क्लिक करें बटन।
इससे विजुअल बेसिक एडिटर खुल जाता है एक नई विंडो में।
- निम्न चरण में, सम्मिलित करें . पर जाएं टैब>> मॉड्यूल select चुनें ।
आपके संदर्भ में आसानी के लिए, आप यहां से कोड को कॉपी कर सकते हैं और इसे विंडो में पेस्ट कर सकते हैं जैसा कि नीचे दिखाया गया है।
Sub CalendarMaker()
'This code was taken from extendoffice.com
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, _
Scenarios:=False
Application.ScreenUpdating = False
On Error GoTo MyErrorTrap
Range("a1:g14").Clear
MyInput = InputBox("Type in Month and year for Calendar ")
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
- बदले में, VBA . को बंद करें विंडो>> मैक्रोज़ . क्लिक करें बटन।
यह मैक्रोज़ . खोलता है डायलॉग बॉक्स।
- इसके बाद, कैलेंडर निर्माता . चुनें मैक्रो>> हिट चलाएं बटन।
अब, यह एक इनपुट बॉक्स opens खोलता है>> माह का नाम दर्ज करें और वर्ष जैसा कि नीचे दिखाया गया है।
इसके बाद, परिणाम नीचे दी गई तस्वीर की तरह दिखना चाहिए।
निष्कर्ष
मुझे उम्मीद है कि यह लेख आपको यह समझने में मदद करेगा कि एक्सेल में एक वार्षिक कैलेंडर कैसे बनाया जाता है। यदि आपके कोई प्रश्न हैं, तो कृपया नीचे एक टिप्पणी छोड़ दें। साथ ही, यदि आप इस तरह के और लेख पढ़ना चाहते हैं, तो आप हमारी वेबसाइट पर जा सकते हैं ExcelDemy , एक वन-स्टॉप एक्सेल समाधान प्रदाता।
संबंधित लेख
- एक्सेल में एक खाली कैलेंडर कैसे बनाएं (मुफ्त टेम्पलेट डाउनलोड करें)