Excel에서 월별 / 연간 달력을 만드는 방법은 무엇입니까?
언젠가 Excel에서 특정 월 또는 연도 달력을 만들어야합니다. 어떻게 빠르게 해결할 수 있습니까? 이 자습서에서는 Excel에서 월별 또는 연간 달력을 빠르게 만드는 방법을 소개합니다.
Perpetual Calendar로 월간 또는 연간 달력을 쉽게 생성
- 무엇이든 재사용 : 가장 많이 사용되거나 복잡한 수식, 차트 및 기타 항목을 즐겨 찾기에 추가하고 나중에 빠르게 재사용 할 수 있습니다.
- 20 개 이상의 텍스트 기능 : 텍스트 문자열에서 숫자 추출; 텍스트의 일부 추출 또는 제거 숫자와 통화를 영어 단어로 변환합니다.
- 병합 도구: 여러 통합 문서와 시트를 하나로; 데이터 손실없이 여러 셀 / 행 / 열 병합; 중복 행과 합계를 병합합니다.
- 분할 도구: 값을 기준으로 데이터를 여러 시트로 분할합니다. 하나의 통합 문서에서 여러 Excel, PDF 또는 CSV 파일로; 한 열에서 여러 열로.
- 붙여 넣기 건너 뛰기 숨겨진 / 필터링 된 행; 수와 합계 배경색 별; 개인화 된 이메일을 여러 수신자에게 대량으로 보냅니다.
- 슈퍼 필터 : 고급 필터 구성표를 만들고 모든 시트에 적용하십시오. 종류 주, 일, 빈도 등으로; 필터 굵게, 수식, 주석으로 ...
- 300개 이상의 강력한 기능; Office 2007-2021 및 365에서 작동합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다.
Excel 템플릿으로 월별 또는 연간 달력 만들기
Excel에서 달력 서식 파일을 사용하여 월별 또는 연간 달력을 만들 수 있습니다.
1. Excel 2010/2013에서 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에 > 신규클래스, Excel 2007에서 사무실 버튼 > 신규클래스을 클릭 한 다음 팝업 창의 오른쪽 섹션에 달력 검색 엔진에. 스크린 샷보기 :
Excel 2010/2013에서
Excel 2007에서
2. 프레스 엔터 버튼이면 여러 유형의 캘린더가 창에 나열됩니다. 필요한 캘린더 유형을 한 가지 선택하고 다운로드 (또는 생성) 오른쪽 창에서. 스크린 샷보기 :
이제 새 통합 문서에 달력이 생성됩니다. 스크린 샷보기 :
VBA로 월별 달력 만들기
경우에 따라 2015 년 XNUMX 월과 같이 지정된 달에 대한 XNUMX 개월 달력을 만들어야합니다. 위의 방법으로 이러한 달력 템플릿을 찾기가 어려울 수 있습니다. 여기에서는 특정 월별 달력을 만드는 데 도움이되는 VBA 코드를 소개합니다.
1. 프레스 Alt + F11 여는 열쇠 응용 프로그램 용 Microsoft Visual Basic 창을 클릭합니다 끼워 넣다 > 모듈을 클릭 한 다음 VBA 코드 아래에 복사하여 창에 붙여 넣습니다.
VBA : 월별 달력을 만듭니다.
Sub CalendarMaker()
' Unprotect sheet if had previous calendar to prevent error.
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, _
Scenarios:=False
' Prevent screen flashing while drawing calendar.
Application.ScreenUpdating = False
' Set up error trapping.
On Error GoTo MyErrorTrap
' Clear area a1:g14 including any previous calendar.
Range("a1:g14").Clear
' Use InputBox to get desired month and year and set variable
' MyInput.
MyInput = InputBox("Type in Month and year for Calendar ")
' Allow user to end macro with Cancel in InputBox.
If MyInput = "" Then Exit Sub
' Get the date value of the beginning of inputted month.
StartDay = DateValue(MyInput)
' Check if valid date but not the first of the month
' -- if so, reset StartDay to first day of month.
If Day(StartDay) <> 1 Then
StartDay = DateValue(Month(StartDay) & "/1/" & _
Year(StartDay))
End If
' Prepare cell for Month and Year as fully spelled out.
Range("a1").NumberFormat = "mmmm yyyy"
' Center the Month and Year label across a1:g1 with appropriate
' size, height and bolding.
With Range("a1:g1")
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlCenter
.Font.Size = 18
.Font.Bold = True
.RowHeight = 35
End With
' Prepare a2:g2 for day of week labels with centering, size,
' height and bolding.
With Range("a2:g2")
.ColumnWidth = 11
.VerticalAlignment = xlCenter
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.Orientation = xlHorizontal
.Font.Size = 12
.Font.Bold = True
.RowHeight = 20
End With
' Put days of week in a2:g2.
Range("a2") = "Sunday"
Range("b2") = "Monday"
Range("c2") = "Tuesday"
Range("d2") = "Wednesday"
Range("e2") = "Thursday"
Range("f2") = "Friday"
Range("g2") = "Saturday"
' Prepare a3:g7 for dates with left/top alignment, size, height
' and bolding.
With Range("a3:g8")
.HorizontalAlignment = xlRight
.VerticalAlignment = xlTop
.Font.Size = 18
.Font.Bold = True
.RowHeight = 21
End With
' Put inputted month and year fully spelling out into "a1".
Range("a1").Value = Application.Text(MyInput, "mmmm yyyy")
' Set variable and get which day of the week the month starts.
DayofWeek = WeekDay(StartDay)
' Set variables to identify the year and month as separate
' variables.
CurYear = Year(StartDay)
CurMonth = Month(StartDay)
' Set variable and calculate the first day of the next month.
FinalDay = DateSerial(CurYear, CurMonth + 1, 1)
' Place a "1" in cell position of the first day of the chosen
' month based on DayofWeek.
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
' Loop through range a3:g8 incrementing each cell after the "1"
' cell.
For Each cell In Range("a3:g8")
RowCell = cell.Row
ColCell = cell.Column
' Do if "1" is in first column.
If cell.Column = 1 And cell.Row = 3 Then
' Do if current cell is not in 1st column.
ElseIf cell.Column <> 1 Then
If cell.Offset(0, -1).Value >= 1 Then
cell.Value = cell.Offset(0, -1).Value + 1
' Stop when the last day of the month has been
' entered.
If cell.Value > (FinalDay - StartDay) Then
cell.Value = ""
' Exit loop when calendar has correct number of
' days shown.
Exit For
End If
End If
' Do only if current cell is not in Row 3 and is in Column 1.
ElseIf cell.Row > 3 And cell.Column = 1 Then
cell.Value = cell.Offset(-1, 6).Value + 1
' Stop when the last day of the month has been entered.
If cell.Value > (FinalDay - StartDay) Then
cell.Value = ""
' Exit loop when calendar has correct number of days
' shown.
Exit For
End If
End If
Next
' Create Entry cells, format them centered, wrap text, and border
' around days.
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
' Unlock these cells to be able to enter text later after
' sheet is protected.
.Locked = False
End With
' Put border around the block of dates.
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
' Turn off gridlines.
ActiveWindow.DisplayGridlines = False
' Protect sheet to prevent overwriting the dates.
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, _
Scenarios:=True
' Resize window to show all of calendar (may have to be adjusted
' for video configuration).
ActiveWindow.WindowState = xlMaximized
ActiveWindow.ScrollRow = 1
' Allow screen to redraw with calendar showing.
Application.ScreenUpdating = True
' Prevent going to error trap unless error found by exiting Sub
' here.
Exit Sub
' Error causes msgbox to indicate the problem, provides new input box,
' and resumes at the line that caused the error.
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는이 웹에서 제공됩니다. https://support.microsoft.com/en-us/kb/150774
2. 프레스 F5 열쇠 또는 달리기 버튼을 클릭하면 달력을 만드는 데 필요한 특정 달을 입력하라는 대화 상자가 나타납니다. 스크린 샷을 참조하십시오.
3. 클릭 OK. 이제 활성 시트에 2015 년 XNUMX 월 달력이 생성됩니다.
그러나 위의 방법에는 몇 가지 제한 사항이 있습니다. 예를 들어 XNUMX 월부터 XNUMX 월까지 한 번에 달력을 만들려면 위의 두 가지 방법으로 달력을 XNUMX 번 만들어야합니다. 이제 빠르고 쉽게 해결할 수있는 편리한 유틸리티를 소개합니다.
Perpetual Calendar로 월간 또는 연간 달력을 쉽게 생성
퍼페 추얼 캘린더 강력한 유틸리티 중 하나입니다. Excel 용 Kutools, Excel에서 한 번에 월별 또는 연간 달력을 빠르게 만들 수 있습니다.
Excel 용 Kutools, 이상과 300 편리한 기능으로 작업이 더 쉬워집니다. | ||
1. 클릭 Enterprise > 워크 시트 > 퍼페 추얼 캘린더. 스크린 샷 참조 :
2. 팝업 대화 상자에서 달력을 만들 월 기간을 지정하고 만들기. 스크린 샷보기 :
그런 다음 XNUMX 개의 캘린더 워크 시트로 새 통합 문서가 생성됩니다. 스크린 샷보기 :
팁 :
특정 월 달력을 만들려면 대화 상자의 시작 및 끝 텍스트 상자에서 같은 달을 선택하기 만하면됩니다.
퍼페 추얼 캘린더에 대해 자세히 알아 보려면 여기를 클릭하십시오.
최고의 사무 생산성 도구
Excel용 Kutools는 대부분의 문제를 해결하고 생산성을 80% 증가시킵니다.
- 재사용: 빠르게 삽입 복잡한 공식, 차트 그리고 이전에 사용한 모든 것; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
- 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
- 셀 / 행 / 열 병합 데이터 손실없이; 셀 내용 분할; 중복 행 / 열 결합... 중복 셀 방지; 범위 비교...
- 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
- 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
- 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
- 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
- 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
- 300개 이상의 강력한 기능. Office / Excel 2007-2021 및 365를 지원합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다. 전체 기능은 30일 무료 평가판입니다. 60일 환불 보장.

Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.
- Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
- 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
- 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
