今日という日付の入力方法いろいろ
Excelを使っていて
入力した日付を記録する機会は多いと思います。
いちいち手入力するのは手間ですね。
以下に、
今日の日付を入力する方法を挙げていきます。
まずは、言うまでもないですが手で入力する方法
5月20日と入力したいとすると
セルに「5/20」と入力すれば
入力した年の日付のデータとして入力されます。
次は、TODAY関数を使った方法
「=TODAY()」と入力すれば表示される値は今日の日付になります。
ただし、例えば3日後に表示される日付は
3日後の日付に更新されてしまうので
日付のコピペ元としては使えます。
あと、関数に必要な引数がないので
「()」を忘れやすいので注意してください。
次は、リストとTODAY関数の合わせ技
セルA1に「=TODAY()」と入力しておき
常に今日の日付が表示されるようにします。
このセルをセルA2において
ドロップダウンリストで選べるようにします。
そうするとリストで選択した時の日付が表示されます。
この日付は、リストで再度選ばないと更新されません。
リストの作成するには
[データ」-「入力規則」をクリックしてください。
次の画像のウィンドウが表示されます。
入力値の種類を「リスト」
元の値のところにTODAY関数を入力したセルを指定してください。
今回の例ではA1セルを指定します。
セルA2にリストが作成されました。
下向き三角を押してリストを表示させると
今日の日付が表示されるので
これを選択すると今日の日付が入力されます。
日付として表示されない場合は
[セルの書式設定]で[表示形式]を日付にしてください。
また、リストを設定するとセルの値はDeleteはできますが、
選択肢以外の値は入力できなくなります。
最後はVBAを使った方法
アクティブなシートでセルに値を入力すると
A列に自動で日付が入力されるようにします。
具体的には、ワークシートのイベントを使用します。
「イベント」とは
シートの値が変わった。
シートがアクティブになった。
などの時を言います。
特定のシートに関連付けられていないマクロは
「標準モジュール」に記述します。
一方、ワークシートのイベントは
特定のワークシートにのみに関連するもので、
「標準モジュール」には記述しません。
「イベント」を使用してマクロを実行するには
「イベントプロシージャ」を使用します。
イベントプロシージャの作成するには
まず、VBEのウィンドウで
イベントを使用したいワークシートをダブルクリックして
コード ウィンドウを開きます。
下の画像の様に
コード ウィンドウの左側のドロップダウンリストから
「Worksheet」を選択します。
次に、コード ウィンドウの右側のドロップダウンリストから
「Change」を選択します。
これで、ワークシートの値が変更されたときに実行される
「Worksheet_Change」イベントプロシージャが作成されました。
ここにシートの値が変更されたときに
日付を入力するコードを書きます。
自動で作成される「Worksheet_SlectionChange」イベントプロシージャは
今回は使用しないので消してください。
コードはこちら
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column <> 1 Then |
実行結果:セルB1に入力したら、セルA1に日付が入力された。
Target.Rowで値が変更されたセルの行番号、
Target.Columnで値が変更されたセルの列番号が取得できます。
| 固定リンク
この記事へのコメントは終了しました。

コメント