Excelで日付を入力する際、毎回カレンダーを確認して曜日を手入力していませんか?西暦や和暦の形式を切り替えたり、曜日をカッコで追加したりするのは意外と手間ですよね。特に同じフォーマットを何度も使う場合、その作業がわずらわしく感じることも。
そこで今回は、Excel初心者から中級者の方に向けて、日付と曜日を簡単に自動入力する方法をご紹介します。この方法を使えば、作業効率が格段にアップします。
手入力の煩わしさを解消しよう
手入力の問題点
カレンダーを確認する手間
日付を入力するたびに、その日が何曜日かカレンダーやスマホで確認する必要があります。
形式の統一が難しい
西暦や和暦、日付の区切り(スラッシュやハイフン)など、形式がバラバラになりがちです。
ミスの可能性
手入力だと誤入力やタイプミスが起こりやすく、後々のトラブルの原因になります。
書式設定で自動表示
ユーザー定義の書式設定
Excelの「セルの書式設定」でユーザー定義を使えば、日付を入力するだけで自動的に曜日を表示できます。
設定手順
-
セルを選択:日付を入力したいセルまたは範囲を選択します。
-
セルの書式設定を開く:選択したセル上で右クリックし、「セルの書式設定」を選択します。
-
表示形式を設定:
-
「表示形式」タブで「ユーザー定義」を選択します。
-
「種類」に以下の書式を入力します。
-
西暦の場合:
yyyy/mm/dd (aaa)
-
和暦の場合:
ggge年m月d日 (aaa)
-
-
-
完了:「OK」をクリックして設定を適用します。
効果
-
自動で曜日を表示:日付を入力するだけで、対応する曜日が自動的に表示されます。
-
形式の統一:指定したフォーマットで統一された表示が可能になります。
VBAでさらに効率アップ!
「書式設定も毎回設定するのは面倒...」そんな方には、VBA(マクロ)を使った方法がおすすめです。ボタン一つで日付と曜日を指定の形式で入力できるので、何度も同じ作業をする必要がある場合に最適です。
VBAコードの紹介
以下のコードを使うことで、入力ダイアログから日付を入力し、アクティブなセルに自動で表示します。
Sub 日付指定曜日自動入力()
Dim Dans As String
Dans = InputBox("記入例>2024/12/11", "返信希望日を入力")
ActiveCell.Value = Format(Dans, "ggge年m月d日(aaa)")
End Sub
コードのポイント
-
InputBox:ユーザーに日付を入力してもらうダイアログを表示します。
-
Format関数:入力された日付を指定の形式で整形します。
-
"ggge年m月d日(aaa)"
は、和暦と曜日を含むフォーマットです。
-
-
ActiveCell:現在選択されているセルに値を入力します。
実際の使い方
-
VBAエディターを開く:
-
Excelで「Alt + F11」を押してVBAエディターを開きます。
-
-
モジュールを挿入:
-
「挿入」→「標準モジュール」を選択します。
-
-
コードを貼り付け:
-
上記のVBAコードをコピーし、モジュールに貼り付けます。
-
-
マクロを実行:
-
Excelに戻り、「開発」タブから「マクロ」を選択。
-
「日付指定曜日自動入力」を選び、「実行」をクリックします。
-
-
日付を入力:
-
表示されたダイアログに日付を入力します(例:
2024/12/11
)。
-
-
結果を確認:
-
アクティブなセルに、指定した形式で日付と曜日が表示されます(例:
令和6年12月11日(水)
)。
-
カスタマイズ方法
-
表示形式を変更:
-
"ggge年m月d日(aaa)"
の部分を変更すれば、お好みのフォーマットにできます。-
例:
"yyyy年m月d日(aaa)"
とすれば西暦表示になります。
-
-
-
セルの指定:
-
ActiveCell
をRange("A1")
のように変更すれば、特定のセルに出力できます。
-
この方法のメリット
-
作業時間の短縮:手入力や書式設定の手間を省けます。
-
ミスの削減:曜日の入力ミスやフォーマットのブレを防ぎます。
-
カスタマイズ性:自分の用途に合わせてコードや表示形式を変更できます。
まとめ
日付と曜日の入力がこれまでより格段に簡単になりましたね!VBAを使えば、繰り返しの作業もボタン一つで済ませることができます。Excelの機能を活用して、日々の業務を効率化しましょう。
ぜひ、この方法を試してみてください。きっと作業効率がアップするはずです!あなたのExcel作業をもっと快適に。小さな工夫で大きな効果を実感してください。