Excel เป็นเครื่องมือที่ยอดเยี่ยมในการคำนวณและเทมเพลตต่างๆ โดยอัตโนมัติ คุณสามารถสร้างปฏิทินรายเดือนได้หลายประเภทผ่าน Excel หากคุณกำลังมองหาวิธีการทำสิ่งนี้ คุณได้มาถึงสถานที่ที่สมบูรณ์แบบแล้ว ในบทความนี้ ผมจะแสดง 3 . ให้คุณดู วิธีที่มีประสิทธิภาพในการสร้างปฏิทินรายเดือน ใน Excel
คุณสามารถดาวน์โหลดสมุดแบบฝึกหัดของเราได้ฟรีที่นี่!
3 วิธีที่มีประสิทธิภาพในการสร้างปฏิทินรายเดือนใน Excel
1. สร้างปฏิทินรายเดือนจากเทมเพลต Excel
Excel เองมีเทมเพลตที่สร้างไว้ล่วงหน้าสำหรับปฏิทิน คุณสามารถสร้างปฏิทินรายเดือนจากเทมเพลตเหล่านั้นได้โดยทำตามวิธีการด้านล่าง
📌 ขั้นตอน:
- ก่อนอื่น ไปที่ ไฟล์ แท็บ
- หลังจากนั้น เลือก ใหม่ ตัวเลือกจาก ไฟล์ ที่ขยาย แท็บ
- ต่อมา ใหม่ หน้าต่างจะปรากฏขึ้น
- กำลังติดตาม พิมพ์ ปฏิทิน ใน ช่องค้นหา และคลิกที่ เริ่มค้นหา ไอคอน.
- ด้วยเหตุนี้ เทมเพลตที่พร้อมใช้งานจะมาหาคุณเพื่อเป็นคำแนะนำ
- ตอนนี้ เลือกเทมเพลตใดก็ได้ที่คุณชอบและคลิกที่ สร้าง ปุ่ม.
ดังนั้น คุณจะเห็นปฏิทินปรากฏในหน้าต่าง Excel ใหม่ตามเทมเพลต สำหรับเทมเพลตที่เราเลือก ผลลัพธ์จะเป็นดังนี้
อ่านเพิ่มเติม: วิธีสร้างปฏิทินใน Excel โดยไม่ต้องใช้เทมเพลต (2 ตัวอย่าง)
2. สร้างปฏิทินรายเดือนแบบกำหนดเองใน Excel 2003 | 2007 | 2010 | 2013 | เวอร์ชัน 2016 และใหม่กว่า
ตอนนี้ อาจเกิดขึ้นได้ว่าคุณไม่ชอบเทมเพลตที่สร้างไว้ล่วงหน้า แต่คุณต้องการสร้างปฏิทินรายเดือนของคุณเองตามที่คุณเลือก ในเรื่องนี้ คุณสามารถสร้างปฏิทินรายเดือนใน Excel โดยทำตามขั้นตอนด้านล่าง
📌 ขั้นตอน:
- ขั้นแรก สร้างส่วนหัวสำหรับเดือนของคุณแล้วเลือก 7 แถว 7 คอลัมน์
- หลังจากนั้น เมื่อเลือกแล้ว ให้คลิกที่ พรมแดนทั้งหมด ไอคอนจาก หน้าแรก แท็บ
- ด้วยเหตุนี้ ทุกเซลล์จะมีเส้นขอบทั้งหมด
- ต่อจากนี้ไป ที่แถวแรกที่เลือก ให้เขียนชื่อวันธรรมดาและจัดรูปแบบตามที่คุณต้องการ
- ตอนนี้ เลือกอีก 6 แถวและ 7 คอลัมน์>> ไปที่ หน้าแรก แท็บ>> เซลล์ กลุ่ม>> รูปแบบ เครื่องมือ>> ความสูงของแถว… ตัวเลือก
- ส่งผลให้ ความสูงของแถว หน้าต่างจะปรากฏขึ้น
- ใส่ค่า 40 ที่ ความสูงของแถว: กล่องข้อความและคลิกที่ ตกลง ปุ่ม.
- หลังจากนั้น เมื่อเลือกก่อนหน้านี้ ให้ไปที่ หน้าแรก แท็บ>> เซลล์ กลุ่ม>> รูปแบบ เครื่องมือ>> ความกว้างคอลัมน์… ตัวเลือก
- ดังนั้น ความกว้างของคอลัมน์ หน้าต่างจะปรากฏขึ้น
- หลังจากนั้น ให้ใส่ค่าเป็น 12 ใน ความกว้างของคอลัมน์: กล่องข้อความและคลิกที่ ตกลง ปุ่ม.
- ตอนนี้ ในส่วนที่เลือกก่อนหน้านี้ คลิกขวา บนเมาส์และเลือก จัดรูปแบบเซลล์… ตัวเลือกจากเมนูบริบท
- ในขณะนี้ จัดรูปแบบเซลล์ หน้าต่างจะปรากฏขึ้น
- จากนั้นไปที่ Alignment แท็บ>> เลือก ขวา (เยื้อง) ตัวเลือกใน แนวนอน: รายการตัวเลือก>> เลือก ด้านบน ตัวเลือกใน แนวตั้ง: รายการตัวเลือก>> คลิกที่ปุ่ม ตกลง ปุ่ม.
ดังนั้นการจัดรูปแบบปฏิทินของคุณจึงพร้อมอย่างเต็มที่ ตอนนี้ google วันแรกของเดือนถัดไปของปีถัดไปและใส่ค่าตามวันธรรมดา สุดท้ายปฏิทินรายเดือนควรมีลักษณะเช่นนี้
อ่านเพิ่มเติม:วิธีสร้างปฏิทินเชิงโต้ตอบใน Excel (2 วิธีง่ายๆ)
3. สร้างปฏิทินรายเดือนโดยใช้ VBA
อีกวิธีหนึ่งในการสร้างปฏิทินรายเดือนคือการใช้โค้ด VBA คุณสามารถทำตามขั้นตอนด้านล่างเพื่อทำสิ่งนี้ให้สำเร็จ
📌 ขั้นตอน:
- ในตอนเริ่มต้น ให้สร้างเวิร์กชีตใหม่และไปที่ นักพัฒนา แท็บ>> Visual Basic เครื่องมือ
- ด้วยเหตุนี้ Microsoft Visual Basic for Applications หน้าต่างจะปรากฏขึ้น
- ต่อไปนี้ ไปที่ แทรก แท็บ>> เลือก โมดูล ตัวเลือก
- ด้วยเหตุนี้ โมดูลใหม่ที่ชื่อว่า Module1 ได้ถูกสร้างขึ้น
- จากนั้น ดับเบิลคลิก บน Module1 และเขียนโค้ด 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 กล่องโต้ตอบจะปรากฏขึ้น คลิกที่ ไม่ ปุ่มที่นี่
- ส่งผลให้ บันทึกเป็น กล่องโต้ตอบจะปรากฏขึ้น
- จากนั้น เลือก บันทึกเป็นประเภท: ตัวเลือกเป็น .xlsm และคลิกที่ บันทึก ปุ่ม.
- ตอนนี้ ปิดหน้าต่างโค้ดแล้วไปที่ นักพัฒนา แท็บ>> มาโคร เครื่องมือ
- ด้วยเหตุนี้ มาโคร หน้าต่างจะปรากฏขึ้น
- ต่อไปนี้ ให้เลือก CalendarMaker มาโครและคลิกที่ เรียกใช้ ปุ่ม.
- ส่งผลให้ Microsoft Excel กล่องโต้ตอบจะปรากฏขึ้น
- ที่นี่ เขียนตัวอักษร 3 ตัวแรกของเดือนและ 4 หลักของปี
- สุดท้าย คลิกที่ ตกลง ปุ่ม.
ดังนั้น คุณจะเห็นปฏิทินของเดือนถัดไปจะถูกสร้างขึ้นในแผ่นงานของคุณและผลลัพธ์จะเป็นดังนี้
สร้างปฏิทินเชิงโต้ตอบ/ไดนามิกใน Excel ด้วยสูตร
ตอนนี้ ถ้าคุณต้องการสร้างปฏิทินแบบโต้ตอบ/ไดนามิกใน Excel ด้วยสูตร คุณต้องทำงานพิเศษหลายอย่าง ทำตามขั้นตอนด้านล่างอย่างระมัดระวังเพื่อให้บรรลุเป้าหมายนี้
📌 ขั้นตอน:
- ขั้นแรก สร้างตารางตัวช่วยสองตาราง ตารางแรกมีรายการวันหยุด และอีกตารางหนึ่งมีรายชื่อเดือน
- ตอนนี้ สร้างเทมเพลตปฏิทินรายเดือนแบบกำหนดเองตามที่คุณต้องการ
- ต่อไป สำหรับวัตถุประสงค์แบบไดนามิก เราต้องการทำให้ชื่อเดือนเป็นอัตโนมัติในขณะนี้
- ในการดำเนินการนี้ ให้เลือก H4 เซลล์>> ไปที่ ข้อมูล แท็บ>> เครื่องมือข้อมูล กลุ่ม>> การตรวจสอบข้อมูล เครื่องมือ>> การตรวจสอบข้อมูล… ตัวเลือก
- ต่อมา การตรวจสอบข้อมูล หน้าต่างจะปรากฏขึ้น
- หลังจากนั้น ไปที่ การตั้งค่า แท็บที่นี่>> เลือก รายการ ตัวเลือกจาก อนุญาต: รายการตัวเลือก>> อ้างถึง E5:E16 เซลล์ที่ ที่มา: กล่องข้อความ>> คลิกที่ปุ่ม ตกลง ปุ่ม.
- ด้วยเหตุนี้ คุณจะเห็นว่าจะมีรายการแบบเลื่อนลงใน H4 เซลล์และคุณสามารถเลือกเดือนได้โดยคลิก
- หลังจากเลือกเดือนเป็น ม.ค. ให้คลิกที่ 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 และเลือก จัดรูปแบบเซลล์… ตัวเลือกจากเมนูบริบท
- ด้วยเหตุนี้ จัดรูปแบบเซลล์ กล่องโต้ตอบจะปรากฏขึ้น
- ไปที่ หมายเลข แท็บที่นี่>> เลือก กำหนดเอง ตัวเลือกจาก หมวดหมู่: บานหน้าต่าง>> เขียน dd ใน ประเภท: กล่องข้อความ>> คลิกที่ปุ่ม ตกลง ปุ่ม.
- ดังนั้น วันที่ในปฏิทินของคุณมีรูปแบบที่ถูกต้อง และคุณสามารถดูปฏิทินแบบเต็มสำหรับเดือนถัดไปได้
- ตอนนี้ หากต้องการทำเครื่องหมายวันหยุดสุดสัปดาห์ให้แตกต่างออกไป ให้เลือกเซลล์วันหยุดสุดสัปดาห์>> ไปที่ หน้าแรก แท็บ>> แบบอักษร กลุ่ม>> เติมสี ไอคอน>> เลือก สีส้ม เน้น 2 เบากว่า 40% สี.
- ตอนนี้ ในการทำเครื่องหมายวันหยุด ให้เลือกเซลล์ B6:H11>> ไปที่แท็บหน้าแรก>> การจัดรูปแบบตามเงื่อนไข เครื่องมือ>> กฎใหม่… ตัวเลือก
- ดังนั้น แก้ไขกฎการจัดรูปแบบ หน้าต่างจะปรากฏขึ้น
- ต่อไปนี้ ให้เลือกตัวเลือกสุดท้ายจาก เลือกประเภทกฎ: รายการตัวเลือก>> เขียนสูตรด้านล่างใน ค่ารูปแบบที่สูตรนี้เป็นจริง: แถบสูตร>> คลิกที่ รูปแบบ… ตัวเลือก
=ISNUMBER(VLOOKUP('Dynamic Monthly Calender'!B6,'Helper Columns'!$C$5:$C$15,1,0))
- จากนั้น ไปที่ เติม จากหน้าต่างที่ปรากฏ>> เลือก สีแดง สี>> คลิกที่ปุ่ม ตกลง ปุ่ม.
- ด้วยเหตุนี้ แก้ไขกฎการจัดรูปแบบ หน้าต่างจะปรากฏขึ้นอีกครั้งพร้อมการแสดงตัวอย่าง คลิกที่ ตกลง ปุ่ม.
ดังนั้น คุณจะได้รับปฏิทินรายเดือนแบบอินเทอร์แอคทีฟที่แสดงวันหยุดสุดสัปดาห์ในสีต่างๆ และวันหยุดจะแสดงด้วยสีต่างๆ คุณสามารถเปลี่ยนเดือนโดยดรอปดาวน์ใน H4 และด้วยเหตุนี้ วันธรรมดา วันหยุดสุดสัปดาห์ และวันหยุดนักขัตฤกษ์ก็จะเปลี่ยนไปเช่นกัน
สร้างปฏิทินประจำปีใน Excel
ตอนนี้ ถ้าคุณต้องการสร้างปฏิทินรายปีใน Excel คุณสามารถทำตามขั้นตอนด้านล่างได้
📌 ขั้นตอน:
- ในตอนแรก ให้สร้างเทมเพลตสำหรับวันและเดือนตามที่คุณต้องการ
- หลังจากนั้น คลิกที่ 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),"")
- จากนั้นกดปุ่ม Ente ปุ่ม r
- ด้วยเหตุนี้ คุณจะเห็นวันที่จะถูกตั้งค่าตามวันที่เจาะจงของเดือนถัดไป
- แต่สำหรับพื้นที่น้อยและปัญหาการจัดรูปแบบ อาจแสดง ### ในบางครั้ง
- หากต้องการกู้คืน ให้เลือกชุดข้อมูลของทั้งเดือนและคลิกขวา บนเซลล์
- ต่อไปนี้ ให้เลือก จัดรูปแบบเซลล์… ตัวเลือก
- ดังนั้น จัดรูปแบบเซลล์ หน้าต่างจะปรากฏขึ้น
- ตอนนี้ ไปที่ หมายเลข แท็บ>> เลือก กำหนดเอง ตัวเลือกจาก หมวดหมู่: บานหน้าต่าง>> เขียน dd ใน ประเภท: กล่องข้อความ>> คลิกที่ปุ่ม ตกลง ปุ่ม.
- ทำซ้ำขั้นตอนเหล่านี้ในแต่ละเดือนของปีถัดไป
- ดังนั้น คุณจะได้รับวันที่ตามวันธรรมดาตลอดทั้งปี
- ตอนนี้ ในการทำเครื่องหมายวันหยุดสุดสัปดาห์ ให้เลือกเซลล์สุดสัปดาห์>> ไปที่ หน้าแรก แท็บ>> แบบอักษร กลุ่ม>> เติมสี ไอคอน>> เลือกสี สีส้ม เน้น 2 เบากว่า 40% .
- หลังจากนั้น สำหรับการทำเครื่องหมายวันหยุดในเดือนมกราคม ให้เลือกวันทั้งหมดของเดือน>> ไปที่ หน้าแรก แท็บ>> การจัดรูปแบบตามเงื่อนไข เครื่องมือ>> เลือก กฎใหม่… ตัวเลือก
- ด้วยเหตุนี้ แก้ไขกฎการจัดรูปแบบ หน้าต่างจะปรากฏขึ้น
- ต่อไปนี้ ให้เลือกตัวเลือกสุดท้ายจาก เลือกประเภทกฎ: ตัวเลือก>> แทรกสูตรต่อไปนี้ใน รูปแบบค่าที่สูตรนี้เป็นจริง: กล่องข้อความ>> คลิกที่ รูปแบบ… ปุ่ม.
=ISNUMBER(VLOOKUP(B6,'Helper Columns'!$C$5:$C$15,1,0))
- หลังจากนั้น ไปที่ เติม แท็บ>> เลือก สีแดง สี>> คลิกที่ปุ่ม ตกลง ปุ่ม.
- ด้วยเหตุนี้ แก้ไขกฎการจัดรูปแบบ หน้าต่างจะปรากฏขึ้นอีกครั้งพร้อมการแสดงตัวอย่าง คลิกที่ ตกลง ปุ่ม.
ทำซ้ำขั้นตอนเหล่านี้สำหรับเดือนอื่นๆ ทั้งหมดโดยใช้สูตรและรูปแบบเดียวกันแบบไดนามิก คุณจะได้ปฏิทินรายปีแบบไดนามิก
อ่านเพิ่มเติม: วิธีสร้างปฏิทินรายสัปดาห์ใน Excel (3 วิธีที่เหมาะสม)
วิธีสร้างกำหนดการรายเดือนใน Excel
คุณยังสามารถสร้างกำหนดการรายเดือนใน Excel ได้อย่างง่ายดาย โดยทำตามขั้นตอนด้านล่างอย่างระมัดระวัง
📌 ขั้นตอน:
- เริ่มแรก ไปที่ ไฟล์ แท็บ
- หลังจากนั้น เลือก ใหม่ ตัวเลือกจาก ไฟล์ ที่ขยาย tab>> เขียน กำหนดการรายเดือน ในช่องค้นหา>> คลิกที่ เริ่มค้นหา ไอคอน.
- ด้วยเหตุนี้ จึงมีเทมเพลตหลายแบบปรากฏขึ้น
- ต่อไปนี้ ให้คลิกที่ ปฏิทิน 12 เดือน แม่แบบ
- หลังจากนั้น คลิกที่ สร้าง ปุ่ม.
ด้วยเหตุนี้ ไฟล์ Excel ใหม่จะถูกสร้างขึ้น และคุณจะได้รับกำหนดการรายเดือนที่คุณต้องการใน Excel
บทสรุป
ในบทความนี้ ฉันได้แสดงวิธีการสร้างปฏิทินรายเดือนใน Excel ฉันแนะนำให้คุณอ่านบทความเต็มอย่างละเอียดและใช้ความรู้กับความต้องการของคุณ คุณยังสามารถดาวน์โหลดเวิร์กบุ๊กฟรีของเราเพื่อฝึกฝนได้อีกด้วย ฉันหวังว่าคุณจะพบว่าบทความนี้มีประโยชน์และให้ข้อมูล หากคุณมีคำถามหรือคำแนะนำเพิ่มเติม โปรดแสดงความคิดเห็นได้ที่นี่
และไปที่ ExcelDemy เพื่อเรียนรู้สิ่งต่างๆ เพิ่มเติมเกี่ยวกับ Excel! ขอให้เป็นวันที่ดี!
บทความที่เกี่ยวข้อง
- วิธีการสร้างปฏิทินเปล่าใน Excel (ดาวน์โหลดเทมเพลตฟรี)