2019.11.13更新
ブログで紹介していましたが、YouTubeでの動画解説もはじめてみましたので紹介します。
こからはブログでのやり方紹介
-------------
年齢を年代に変換するとき、IF文を使っていたりしませんか?INT関数を使えば3秒で変換できます。Excel関数は1つの目的でも複数の手段がありますので参考までにまとめておきます。
目次
1.INT関数
【おすすめ度】★★★
【スピード】 ★★★
【応用度】 ★★★
1-1.やり方
枠内を=(イコール)からコピーして[年齢]の箇所を実際のセルの値(A2 など)に置き換えればそのまま使えます。
= INT ( [年齢] / 10 ) *10
IF文だと、IF(A1<10,0,IF(A1<=20,10,IF(…めんどくさ~い!。面倒だけならまだしも、間違えるリスクもありますよね。
1-2.考え方
私の精神年齢25歳を例にして説明したいと思います。
式
[年代]
= INT ( [年齢] / 10 ) * 10
= INT ( 25 / 10 ) * 10
= INT ( 2.5 ) * 10
= 2 * 10
= 10
解説
25歳の場合、25を10で割り2.5、2.5がINT関数で整数2となり、10倍して20となります。
1-3.INT関数とは
Excel関数はちょっとした工夫で、使い方は広がります。今回、紹介するINT関数もそのうちの一つ。INT関数は数値を整数(※1)に変換する関数です。しかも使い方はとっても簡単で引数(※2)が1つだけ。
※1:整数は、数値 3.1415の場合3、数値42.195の場合42の部分。
※2:引数は、ヒキスウと読み、関数の中に入れる値。パラメーターともいいます。
具体的には次の通り。
= INT ( [対象セル] )
A列を対象に、B列にINT関数をいれてみると、以下のようになります。セル"A1"を対象にした場合、結果としては"1"が表示されます。
1-4.応用編
年代以外にも他にも応用のしかたはたくさんあります。イメージアップできるようにいくつか紹介してみたいと思います。
【応用1】 年齢を5歳ごとの年代にする
前段で紹介した年代は"10で割ってINTして10倍する"でした。5歳ごとにしたい場合は"5で割ってINTして5倍"すればよいです。
= INT ( 年齢 / 5 ) * 5
イメージはこんな感じ。
【応用2】1円単位を3,000円単位にする
年齢だけではなくても、金額を対象に区分を作ることもできます。例えば、売上をある程度の区分で仕分けしてボリュームゾーンを調べる場合、このような変換をしてから集計するとよいでしょう。
= INT ( 金額 / 3000 ) * 3000
イメージはこんな感じ。
年代や5歳ごとの区分ができたら"代"とか"15~19歳"と表示させたいですよね。一つひとつ手入力ではなく関数で効率的に読み替える方法はこちら↓
◇年齢を年代表示する方法
2.Rounddown関数
【おすすめ度】★★☆
【スピード】 ★★☆
【応用度】 ★★☆
2-1.やり方
枠内を=(イコール)からコピーして[年齢]の箇所を実際のセルの値(A2 など)に置き換えればそのまま使えます。
=ROUNDDOWN([年齢],-1)
2-2.考え方
Rounddonw関数は切り捨てる関数です。具体的には次の通り。
Rounddown(対象セル,引数1) :引数1で切り捨てる桁を指定する
引数1は整数を指定します。1の場合小数点以下1位まで有効(2位以下を切り捨て)となります。
(例) 3141.5926
rounddonw(3141.5926,-3) =3000.000
rounddonw(3141.5926,-2) =3100.000
rounddonw(3141.5926,-1) =3140.000
rounddonw(3141.5926, 0) =3141.000
rounddonw(3141.5926, 1) =3141.500
rounddonw(3141.5926, 2) =3141.590
rounddonw(3141.5926, 3) =3141.592
負の整数の場合は小数点から左に何桁か、正の整数の場合は小数点から右に何桁かを意味しています。上記のようなイメージで覚えるとわかりやすいと思います。
3.IF関数
【おすすめ度】☆☆☆
【スピード】 ☆☆☆
【応用度】 ★★★
タイトルにIF文を使わずにと記載していますが紹介だけはしておきます。スピードも遅く、おすすめはしませんが、IF文はあらゆるシーンで利用でき応用度は高いですね。
3-1.やり方
枠内を=(イコール)からコピーして[年齢]の箇所を実際のセルの値(A2 など)に置き換えればそのまま使えます。が、つかわないですよねwww スマホでご覧いただいている場合は、横画面にすると正常に表示されると思います。
=IF([年齢]>=100,100,IF([年齢]>=90,90,IF([年齢]>=80,80,IF([年齢]>=70,70,IF([年齢]>=60,60,IF([年齢]>=50,50,IF([年齢]>=40,40,IF([年齢]>=30,30,IF([年齢]>=20,20,IF([年齢]>=10,10,0))))))))))
3-2.考え方
省略(汗
4.まとめ
少し高度な表現をすると、今回のデータ処理は連続値をカテゴリ値に変換するものです。連続値というのは年齢のように大小の概念があり途切れないデータ。他には金額、気温、湿度など。カテゴリ値はいくつかの固まりに分けられたもの。年代の他には、晴・曇・雨などの天気、曜日(月、火…)などがあります。
分析をする時に、連続値のままだとボリュームゾーンがわかりづらい、傾向が読めないという場合があります。そんな時に、カテゴリ値に変換し集計するとデータを処理しやすくなる場合があります。Excel関数の本では、数値を整数にする関数として紹介されるINTも、使い方次第では立派な分析用の関数に成り上がります。
5.関連記事
生年月日から年齢を計算する場合もありますよね。しかも、生年月日のデータって、"文字列"だったり"数字"だったり"日付"だったり・・・データの型に応じてやり方は異なってきます。生年月日データの型ごとの計算方法はこちらを参考にしてください。
◇生年月日から年齢を計算する方法
データ分析しても見せ方やまとめかたも重要になります。動くグラフで強調して魅せることもできます。
◇動くグラフでプレゼンを演出
グラフを動かすためには、Excelで作成するのではなく、PowerPointでグラフを描くとより効果的です。PowerPointで効率的にきれいにグラフを描く方法はこちらを参考にしてください。
◇Excelだけがグラフじゃない。PowerPointdで描く早くてきれなグラフ