エクセルの関数の1つである、DATEVALUE関数の使い方についてです。
読み方は「データバリュー」です。
DATEVALUE関数とは?
日本の場合、日付というのはいろんな表わし方がありますね。
例えば「平成30年1月1日」。あるいは「2018年1月1日」
あるいは「2018/1/1」や「H30.1.1」など様々です。
上記は表示こそ異なるものの、全て同じ日付ですね。
表示が異なっても同じ日付であることをわかるために、エクセルは共通したデータで日付を管理しています。
この共通したデータをシリアル値と言います。
シリアル値は1900年1月1日を「1」とした値です。
例えば1900年1月2日は「2」といった具合です。
DATEVALUE関数は日付からシリアル値を求める関数です。
DATEVALUE関数の使い方
DATEVALUE関数の式の形はちょっとややこしいです。
上記のように、月や日といった単位がある場合は、
=DATEVALUE(西暦のセル&月のセル&日のセル)
という感じ。
一方で、単位がなくセルに数字だけ入れる場合は
=DATEVALUE(年の数値&”/”&月の数値&”/”&日の数値)
のように/(スラッシュ)を「”」で区切るわけです。そしれそれぞれの間に「&」を入れるわけです。
いずれにしても、1990年1月2日は「2」という数字が返ってくるわけです。
DATEVALUE関数の意義
1つのセルに年月日が全部入っているなら、「セルの書式設定」の「表示形式」からシリアル値は簡単に知ることができます。
年月日が別々のセルに入力されていて、それらをまとめて日付としたい場合にDATEVALUE関数が役に立ちます。
DATEVALUE関数の応用
DATEVALUE関数の応用として、その西暦が平成かそうじゃないかを求める式を作ってみます。
まず、適当なセルに「平成1年1月1日」と入力、セルを右クリックして「セルの書式設定」の「表示形式」で「標準」を選択し、平成1年1月1日のシリアル値を見てみます。
「平成1年1月1日」のシリアル値は「32509」です。
このシリアル値を参考に、IF関数を組み合わせてその西暦が平成に該当するか否かの式を作ります。
補足記事:IFの使い方
実際の式はこのような感じです。
=IF(DATEVALUE(A1&B1&C1)<32509,"平成より前","平成")
画像のように、任意の西暦を打ちこむと、それが「平成より前」なのか「平成」なのかを表示してくれます。
ちなみに今回作った式の意味は、
「もしもA1の西暦とB1の月とC1の日によってできた日付のシリアル値が32509未満なら『平成より前』と表示して、それ以外なら『平成』と表示してね」となっています。
おわりに
DATEVALUE関数はそれ自体で数値を合計したり平均したりする関数ではないので馴染みがない人も多かもしれません。
しかしながら、エクセルの醍醐味である作業の自動化においてDATEVALUE関数はちょこちょこお世話になる関数です。
今回の応用例のような、「ある西暦の和歴は何か」といった類いの作業は手作業で確認してもいいのですが、自動でやってくれれば楽ですよね。
DATEVALUE関数をはじめとするエクセル関数で仕事や作業を効率化していきましょう♪