- Home »
- エクセル Q&A(Tips):目次 »
- 日付データだけが入力できるようにしたい
日付の入力を制限する topへ
- データの入力時に日付を入力する箇所には日付データを入力したいのですが、誤って文字列が入力されたりする可能性があります。
入力されるものを日付データに制限したいときには、入力規則を利用することができます。
-
- 入力する日付を 2014/1/1〜2014/12/31 の期間に制限したいと思います。
日付を入力するセル範囲 B3:B11 を選択しました。
- セルの表示形式を設定します。
ここでは、[ホーム]タブで[長い日付形式]を選択しました。
- 「データ」タブの[データの入力規則]を実行します。
- データの入力規則の[設定]タブを選択します。
入力値の種類で[日付]を選択します。
データで[次の期間]を選択しました。
「次の日付から」で、入力できる日付の最小値を入力します。ここでは「2014/1/1」と入力しました。
「次の日付まで」で、入力できる日付の最大値を入力します。ここでは「2014/12/31」と入力しました。
- 入力が適切な値でないときは、入力する人になぜ入力ができないのかを明示したいと思います。
[エラーメッセージ]タブを選択します。
スタイルで[停止]が選択されているのを確認します。
タイトルに「日付の確認」と入力しました。
エラーメッセージには「入力できる日付は 2014/1/1 〜 2014/12/31 に制限されています。」と入力しました。
- [OK]ボタンをクリックすると、入力規則の設定が完了です。
- 動作を確認してみます。
- 日付のセルに「2013/1/10」と不適切な値を入力しようとすると、エラーメッセージが表示されます。
[再試行]ボタンを押して、適切な日付を再度入力をし直すことになります。
- 「2014年8月10日」と入力した場合は、Excelが日付と認識してくれるのでエラーはなく、入力ができます。
- 「2014.8.11」と入力した場合は、Excelが日付と認識してくれないので、エラーとなります。
-
- 入力できる日付を今月だけの日付にしたいときの例です
途中の操作は省略します。
- 「次の日付から」で =EOMONTH(TODAY(),-1)+1 と指定します。
EOMONTH(TODAY(),-1) で -1 としているので、先月の末日が求められます。+1とすると 今月の 1日になります。
- 「次の日付まで」では =EOMONTH(TODAY(),0) として、今月の末日を指定します。
-
- ここでは、リストから入力する例を書いていますが、使い方によってはリスト以外の日付を入力できないようにすることができます。
リストから選択しなくても、セルに直接入力することができるので、セルに直接入力してもらいます。
しかし、リストに無い日付はエラーになるということから、入力できる日付を制限できるということになります。
- 入力する日付をドロップダウンリストから選択する例を書いてみます。。
他のシートに 2014/1/1〜2014/12/31の日付を入力します。
Sheet2のB3セルを選択して、[ホーム]タブの[フィル]→[連続データの作成]を実行します。
- 範囲で「列」を選択します。
種類で「日付」、増加単位で「日」を選択します。
増分値は「1」とし、停止値は「2014/12/31」とします。
- Sheet2のB3以降に 2014/1/1〜2014/12/31 までの日付が入力できました。
- Sheet1の日付を入力するセルを選択して、入力規則を設定します。
入力値の種類で「リスト」を選択します。
元の値では入力したSheet2のセル範囲を指定します。
- セル範囲が広いので、Sheet2のB3セルを選択したら、[Shift]+[Ctrl]+[↓]キーで選択するのが便利です。
- ドロップダウンリストから日付を選択して入力することができるようになりました。
しかし、ここでの例が適切ではないため、・ドロップダウンリストが長いので入力が便利とは言えず、実用的ではないように思えます。
でも、選択する期間が短いときなどや、入力できる日付を制限したいときには利用する価値が出てくるものと思います。
よねさんのExcelとWordの使い方|エクセル2010基本講座:目次|日付データだけが入力できるようにしたい