Перейти к основному содержанию

Как создать календарь в Excel?

Календарь Excel помогает отслеживать важные события, например, когда кто-то приступает к новой работе или когда что-то нужно доставить. Благодаря этому увидеть эти даты легко и ясно. В этом руководстве я покажу вам, как создавать ежемесячные и годовые календари в Excel. Мы рассмотрим использование шаблонов для быстрой настройки, а также то, как создать шаблон с нуля для тех, кто хочет большего контроля. Таким образом, вы сможете оставаться организованным, будь то работа или личные планы.

Создайте годовой календарь с помощью шаблонов календаря Excel.

Быстро создавайте ежемесячный или годовой календарь с помощью Kutools for Excel

Создайте ежемесячный календарь с кодом VBA


Создайте годовой календарь с помощью шаблонов календаря Excel.

Используя этот метод, вы должны убедиться, что ваш компьютер подключен к сети, чтобы вы могли загрузить Шаблоны календаря.

1. Идти к Файл вкладку нажмите Новые кнопку на левой панели и нажмите Календари от Предлагаемые поиски. Смотрите скриншот:

2. выберите один из шаблонов календаря, который вам нравится, дважды щелкните его, чтобы создать годовой календарь.

Результат


Быстро создавайте ежемесячный или годовой календарь с помощью Kutools for Excel

Вечный календарь инструмент kutools для Excel может быстро создать настраиваемый календарь на месяц или календарь на год в новой книге, а календарь на каждый месяц будет содержаться в новом рабочем листе.

Примечание: Чтобы применить это Вечный календарь функция, во-первых, вы должны скачать и установить Kutools for Excel.

После установки Kutools for Excel, нажмите Кутулс Плюс > Рабочий лист > Вечный календарь. Во всплывающем окне Вечный календарь диалоговое окно, сделайте следующее:

  • Чтобы создать ежемесячный календарь, укажите месяцы, в которых вы хотите создать календарь, с помощью от ик выпадающий список и нажмите Создавай.
  • Чтобы создать годовой календарь, укажите год, в котором вы хотите создать календарь, с помощью от и к выпадающий список и нажмите Создавай.
Результат
  • Ежемесячный календарь:
  • Годовой календарь:
Функции: Чтобы использовать эту функцию, вам необходимо установить Kutools for Excel во-первых, пожалуйста нажмите, чтобы загрузить и получить 30-дневную бесплатную пробную версию сейчас.

Создайте ежемесячный календарь с кодом VBA

С помощью следующего кода VBA вы можете быстро создать ежемесячный календарь. Пожалуйста, сделайте следующее:

1, нажмите другой + F11 клавиши, чтобы открыть окно Microsoft Visual Basic для приложений.

2. Откроется новое окно. Нажмите Вставить > Модули, затем введите в модуль следующие коды:

 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 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 

3. Затем нажмите Run или нажмите F5 ключ для запуска приложения. Теперь появится окно подсказки, в которое вы можете ввести месяц и год.

Результат

Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Thanks guys for helping. Would like to be able to have a yearly Calendar in which I can enter items. If you can help that would be great.
This comment was minimized by the moderator on the site
Hi, How can I make it start on Monday instead? Thanks in advance
This comment was minimized by the moderator on the site
Excellent job. Billions thanks for your great design of the Excel calendar template. :lol:
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations