Excel で年間カレンダーを作成する方法 (簡単な手順)
エクセル カレンダーは、前もって計画を立て、スケジュールが忙しい場合に非常に役立ちます。これを思い出して、この記事では、Excel で年間カレンダーを作成する方法の説明とともに手順を説明します。 .興味深いことに、このカレンダーは動的でインタラクティブです。 つまり、年の値を変更すると、カレンダーが自動的に更新されます。さらに、Excel VBA を使用して月間カレンダーを作成する方法についても説明します。 .
以下のリンクから練習用ワークブックをダウンロードできます。
Excel で年間カレンダーを作成する 4 つのステップ
さて、このチュートリアルを徹底的に分析する前に、最終的な出力がどのようになるかをお見せしましょう。ここに年間カレンダーがあります。土曜日 と 日曜日 (週末) は薄いオレンジ色で表示され、 祝日 は 明るいオレンジ色で表示されます。
ここでは、Microsoft Excel 365 を使用しています。 必要に応じて他のバージョンを使用することもできます。
📌 ステップ 01:プライマリ アウトラインを作成する
- 最初のステップでは、月を分割してカレンダーのアウトラインを作成します 3 列 4 行にまたがる。
- 次に、1 週間 の 7 日間を入力します。 週末をハイライトします 、この場合は 土曜日 と 日曜日 .
続きを読む: Excel で週間カレンダーを作成する方法 (3 つの適切な方法)
📌 ステップ 02:月の名前を入力 :
- 次に、 B4 に移動します セル>> 数値 1 を入力>> CTRL + 1 を押します
これで セルの書式設定 が開きます ダイアログ ボックス。
- 最初に、Number に移動します。 タブ>> カスタムを選択 オプション>> タイプ フィールドに、「1 月」 と入力します (逆コンマ内)>> 最後に Font にジャンプ タブ
- 次に、太字斜体を選択します フォント スタイル >> 色を選択 、ここでは紫を選択しました>> OK をクリックします ボタン。
- 次に、B4:H4 を選択します セルの範囲>> CTRL + 1 を押します セルの書式設定に移動するためのキー ウィンドウ。
- これに続いて、アラインメントに進みます タブ>> 水平 セクションで、 選択範囲の中央に配置 を選択します オプション>> OK を押します ボタン。
最後に、月の名前 January が表示されます 下の画像に示すように。
- 同様に、他の月についても同じ手順を繰り返すと、出力は次の図のようになります。
続きを読む: Excel でテンプレートなしでカレンダーを作成する方法 (2 つの例)
📌 ステップ 03:Excel 関数を利用して動的なカレンダーを作成する
- 次に、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 年を指します そして月 1 月
📃 注: SEQUENCE 関数 Excel 365、Excel 2021、Excel for the web で使用できるため、互換性のあるバージョンを使用していることを確認してください。
- では、ENTER を押してください キーと数式は、Month のすべての日を入力します 1月 .
📃 注: 日付を必ず変更してください dd のみにフォーマット セルの書式設定 CTRL + 1 を押してウィンドウを開きます
最終的に、結果は以下の画像のようになります。
📌 ステップ 04:カレンダーで休日を指定する :
- 最後の 4 番目のステップでは、休日のリストを作成します。 以下に示すように、新しいシートで。
- 次に、B6:H11 を選択します セル>> 条件付き書式に移動 ドロップダウン>> 新しいルール を選択 オプション
新しいフォーマット ルール ウィザードがポップアップします。
- 次に、[数式を使用して書式設定するセルを決定する] を選択します オプション
- 次に、ルールの説明 次の式を入力してください。
=ISNUMBER(VLOOKUP(B6,Holidays!$C:$C,1,0))
こちらはB6 セルは月曜日を指します その月 1月 休日!$C:$C 日付を表します 休日
数式の内訳:
- VLOOKUP(B6,休日!$C:$C,1,0)) → VLOOKUP 関数 テーブルの一番左の列の値を検索し、指定した列から同じ行の値を返します。こちら B6 ( lookup_value 引数) は Holidays!$C:$C からマッピングされます (table_array 引数) 配列。次、1 (col_index_num 引数) は、ルックアップ値の列番号を表します。最後に、0 (range_lookup 引数) は完全一致を指します ルックアップ値の.
- アウトプット → #N/A
- ISNUMBER(VLOOKUP(B6,休日!$C:$C,1,0)) →
- になる
- ISNUMBER(#N/A) → ISNUMBER 関数 値が数値かどうかをチェックし、TRUE を返します または FALSE .ここでは、#N/A 値です 引数であり、数値ではないため、関数は FALSE を返します .
- 出力 → FALSE
これで、1 月 1 日の休日が強調表示されます。 明るいオレンジ色です。
同様のスタイルで、他の月についても同じプロセスを繰り返すと、出力は以下に示すスクリーンショットのようになります。
月間カレンダーの作成方法
月間カレンダーを作成したい場合 ?私たちの次の方法はあなたをカバーしています!ここでは、VBA コードを使用します タスクを自動化するため、実際に見てみましょう.
📌 歩数 :
- 何よりもまず、 デベロッパー に移動します タブ>> Visual Basic をクリックします ボタン。
Visual Basic Editor が開きます 新しいウィンドウで。
- 次のステップで、挿入 タブ>> モジュールを選択 .
参照しやすいように、ここからコードをコピーして、以下に示すようにウィンドウに貼り付けることができます。
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 を閉じます ウィンドウ>> マクロをクリック ボタン。
マクロが開きます ダイアログ ボックス。
- これに続いて、CalendarMaker を選択します マクロ>> 実行 を押します ボタン。
入力ボックスが開きます>> 月名を入力してください そして年 以下に示すように。
その後、結果は下の図のようになります。
結論
この記事が、Excel で年間カレンダーを作成する方法を理解するのに役立つことを願っています。ご不明な点がございましたら、下にコメントを残してください。また、このような記事をさらに読みたい場合は、当社の Web サイト ExcelDemy にアクセスしてください。 、ワンストップの Excel ソリューション プロバイダーです。
関連記事
- Excel で空白のカレンダーを作成する方法 (無料のテンプレートをダウンロード)
-
Excel でライブラリ データベースを作成する方法 (簡単な手順)
ほとんどの人は、会計、追跡、または予測の目的で Microsoft Excel を使用します。ただし、Excel は優れたデータベース ソフトウェアとしても使用できます。 Excel は、データ入力および管理ソフトウェアとして非常に強力だからです。 Excel の組み込みツールの助けを借りて、あらゆる種類のデータベースを簡単に作成できます。このチュートリアルでは、Excel でライブラリ データベースを作成する方法と、フォームを使用してデータベースに値を入力する方法を示します。 デモンストレーションに使用するワークブックは、以下のリンクからダウンロードできます。 図書館データベースの概要
-
Excel で XML マッピングを作成する方法 (簡単な手順)
この記事では、XML を作成する簡単な手順を学びます Excel でのマッピング .さまざまなプログラムやオペレーティング システムで使用できるように、ファイルの種類を変更する必要があることがよくあります。必要に応じて XML および XLSX は、Android と Windows で最も一般的なファイル タイプの 2 つです。 XML を変換する エクセルへ または Excel XML に 最近では非常に重要なスキームです。 演習用ワークブックと XML をダウンロードできます 構造ファイルはこちらから Excel で XML マッピングを作成するための段階的な手順 3 あります