年齢から自動で年代をグループ分けしたいというシーンはよくありますよね。
- 10代、20代、30代・・・
- 〇歳未満、〇歳~〇歳、〇歳以上
- 未成年、成人、高齢者
この記事では、ExcelとGoogleスプレッドシートの両方で使える“年齢の階層化”の計算式をご紹介します。
簡単な一行の関数で、年代分類がサクッとできるようになります!
年齢の階層化方法
年齢を「◯代」に分ける基本の考え方
年齢を10で割って切り捨て、それに「代」という文字をつければ、基本的な分類が完成します。INT()関数は除算した余りを切り捨てて整数部を返す関数ですね!
=INT(A2/10)*10 & “代”
- A2 に「23」と入力されていれば → 結果は「20代」
- A2 に「8」と入力されていれば → 結果は「0代」
特定の範囲に応じてラベルを付ける方法
=IF(A2<18,”未成年”,IF(A2<65,”成人”,”高齢者”))
これで、18歳未満は未成年、18際から64歳までを成人、65歳以上を高齢者と分類することができます。
Excelのバージョンが新しい場合は、IFS
や SWITCH
関数でもよりスッキリ書けますが、古いバージョンでは使えないこともあるため、ここでは互換性の高い IF
関数を使っています。
=ARRAYFORMULA(IF(A2:A="","",IF(A2:A<18,"未成年",IF(A2:A<65,"成人","高齢者"))))
とした方が良いですね!
【Googleスプレッドシート】なら配列処理もできる
先にご紹介した方法はExcelでもGoogleスプレッドシートでもご利用いただけますが、Googleスプレッドシートの場合更に便利な機能が使えます。
通常1つのセルに対して分類するというより、指定した列の全ての行に対して階層化(分類)したいですよね。
Excelの場合、先の数式を該当行にコピーする必要がありますがGoogleスプレッドシートの場合ARRAYFORMULA
を使って複数行を一気に処理することができます。
=ARRAYFORMULA(IF(A2:A=””, “”, INT(A2:A/10)*10 & “代”))
この式をB2セルに入力することで、A列に入力された年齢を自動でB列に分類してくれます。

▼こちらの記事でもArrayFormula関数について解説しています。

まとめ
年齢を「◯代」や「未成年」「高齢者」などのグループに自動で分類する方法は、アンケート集計や顧客分析など、さまざまな場面で活用できます。
ExcelでもGoogleスプレッドシートでも、基本の関数を使えばかんたんに実現可能です。
特にスプレッドシートでは ARRAYFORMULA
を使って複数行に一括適用できるのが便利ですね。
実際の業務で活かせる場面も多いので、ぜひこの記事を参考に、年代分類を自動化してみてください!
コメント