
excel2010を使用しています。
現在、会員のお客様の年代別集計表を作成しています。
A列に小学生以下、中学生、高校生、大学生以上と4項目に分けて該当する年代のお客様の人数の集計をしております。
<シート1>
A列 B列 C列 D列 E列
小学生以下 ~ 12
中学生 13 ~ 15
高校生 16 ~ 18
大学生以上 19 ~
<シート2>
A列 B列 C列
会員No. 生年月日 年齢
A 19XX/XX/XX =datedif(B2,today(),"Y")
B 19YY/YY/YY =datedif(B3,today(),"Y")
C 19ZZ/ZZ/ZZ =datedif(B4,today(),"Y")
としてシート1のE1:E4にFREQUENCY関数を用いて{=frequency(Sheet2!C2:C4,Sheet1!D1:D3)}と、年齢毎の人数を求める表を作成したのですが、12歳でも中学生、15歳でも高校生、大学生でも18歳の方がいらっしゃるわけで、このままでは正しい結果が得られない為、現在頭を悩ませております。
どのようにすればシート1のA列に記載している通りの年代のお客様がシート1のE列に表示出来ますでしょうか?
上手く状況が説明出来ていないかもしれませんが、皆様のお知恵を拝借させていただけますと幸いです。
No.3ベストアンサー
- 回答日時:
>何度入力し直しても
>中学生の方は1900/1/0
>高校生の方は1900/1/2
>と表示されてしまいます。
それは、セルの書式設定の表示形式が[日付]となっているためです。
Excelではシリアル値と言って、日付けや時刻のデータを、1899年12月31日の午前0時(Excel2007よりも前のMac版のExcelでは1904年1月1日の午前0時)から経過した日数として扱っています。
そのため、セルの書式設定が日付となっている場合には、1や2といった単なる数値が、日付けとして表示されてしまうのです。
ですから、次の様な操作を行って、人数を表示させるセルの書式設定の表示形式を[G/標準]か[数値]に設定して下さい。
年代のお客様の人数を表示させるセルをまとめて範囲選択
↓
選択範囲を示す黒い太枠の内側にカーソルを合わせてマウスを右クリック
↓
現れた選択肢の中にある[セルの書式設定]をクリック
↓
現れた「セルの書式設定」ダイアログボックスの[表示形式]タブをクリック
↓
現れた「分類」欄の中にある[標準]か又は[数値]をクリック
↓
「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック
【参考URL】
楽遊の部屋 > Excel超入門 > (1)セルの書式設定方法
http://homepage3.nifty.com/gakuyu/excel/syosiki. …
それと、「1900/1/0」や「1900/1/2」と表示されてしまう問題とは全く別の話になるのですが、回答No.1及び回答No.2において提示させて頂いた関数には、見落としていた点があるため、今日の日付が1月~3月である場合には、年度が1年ずれてしまうという欠陥が御座いました。
ですから、各関数を次のものと差し替えて下さい。
【小学生以下の人数を求める関数】
=COUNTIF(Sheet2!$B:$B,">="&YEAR(TODAY())-12-(MONTH(TODAY())<4)&"/4/3")
【中学生の人数を求める関数】
=COUNTIFS(Sheet2!$B:$B,">="&YEAR(TODAY())-15-(MONTH(TODAY())<4)&"/4/3",Sheet2!$B:$B,"<"&YEAR(TODAY())-12-(MONTH(TODAY())<4)&"/4/3")
或いは
=COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-12-(MONTH(TODAY())<4)&"/4/3")-COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-15-(MONTH(TODAY())<4)&"/4/3")
【高校生の人数を求める関数】
=COUNTIFS(Sheet2!$B:$B,">="&YEAR(TODAY())-18-(MONTH(TODAY())<4)&"/4/3",Sheet2!$B:$B,"<"&YEAR(TODAY())-15-(MONTH(TODAY())<4)&"/4/3")
或いは
=COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-15-(MONTH(TODAY())<4)&"/4/3")-COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-18-(MONTH(TODAY())<4)&"/4/3")
【大学生以上の人数を求める関数】
=COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-18-(MONTH(TODAY())<4)&"/4/3")
お返事が遅くなり申し訳ありません!
教えていただいた通りに入力し無事に表が完成しました!
この度は詳しく丁寧に教えていただき誠にありがとうございました!
No.2
- 回答日時:
御質問文では
>excel2010を使用しています。
となっておりましたので、COUNTIFS関数を使用する例を提示させて頂いたのですが、
>早速やってみたのですが、職場のPCはexcel2002だった為、中学生の場合と高校生の場合のCOUNTIFSが使用出来ませんでした…
>他の関数で代用出来ませんでしょうか…?
という事でしたら、次の様にされると良いと思います。
【中学生の人数を求める関数】
=COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-12&"/4/3")-COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-15&"/4/3")
【高校生の人数を求める関数】
=COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-15&"/4/3")-COUNTIF(Sheet2!$B:$B,"<"&YEAR(TODAY())-18&"/4/3")
この回答への補足
迅速な回答ありがとうございます!
説明が不足しておりました申し訳ありません。
自宅のexcelは確かに2010だったのですが、職場のexcelは2002でした…
早速説明いただいたように入力してみたのですが、何度入力し直しても
中学生の方は1900/1/0
高校生の方は1900/1/2
と表示されてしまいます。
何か設定が間違っているのでしょうか?
No.1
- 回答日時:
高校や大学の場合、入学出来ずに浪人する事もあるため、16歳以上で高校生でも大学生でもない人や、19歳以上の高校生もいますし、必ずしも高校に入学しなければならないという訳でもないため、中学や高校を卒業した直後に社会人となる人などもいますから、必ずしも年齢や生年月日だけでは、小学生以下、中学生、高校生、大学生以上等に分ける事は出来ないと思います。
その様なパターンがある事を無視して、取り敢えずの話として、全員が必ず浪人する事無く大学まで進学するものとした場合には、次の様な関数となります。
【小学生以下の人数を求める関数】
=COUNTIF(Sheet2!$B:$B,">="&YEAR(TODAY())-12&"/4/3")
【中学生の人数を求める関数】
=COUNTIFS(Sheet2!$B:$B,">="&YEAR(TODAY())-15&"/4/3",Sheet2!$B:$B,"<"&YEAR(TODAY())-12&"/4/3")
【高校生の人数を求める関数】
=COUNTIFS(Sheet2!$B:$B,">="&YEAR(TODAY())-18&"/4/3",Sheet2!$B:$B,"<"&YEAR(TODAY())-15&"/4/3")
【大学生以上の人数を求める関数】
=COUNTIF(Sheet2!$B:$B,">="&YEAR(TODAY())-19&"/4/3")
【参考URL】
文部科学省 > 教育 > 小学校、中学校、高等学校 > 小・中学校への就学について > 就学事務Q&A > 1.4月1日生まれの児童生徒の学年について
http://www.mext.go.jp/a_menu/shotou/shugaku/deta …
この回答への補足
回答ありがとうございます!
早速やってみたのですが、職場のPCはexcel2002だった為、中学生の場合と高校生の場合のCOUNTIFSが使用出来ませんでした…
情報が不足しており、大変失礼致しました!
SUMPRODUCTで色々試しましたがうまくいきません。他の関数で代用出来ませんでしょうか…?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) 別シートに毎回異なるデータをコピーする 7 2022/06/24 09:02
- Excel(エクセル) Excelの関数 5 2023/07/07 05:26
- その他(Microsoft Office) Excel2019と365、2021 2 2023/07/08 06:22
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Excel(エクセル) Excelのテーブルについて 6 2023/07/07 08:37
- Excel(エクセル) 現時点の年齢を算出して、その年齢と一致したセルを色付けしたい。 4 2022/06/23 17:49
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Excel(エクセル) 【エクセル」 特定のセルで条件抽出した列を、別シートに上から詰めて表示したい。 8 2022/04/08 16:00
- 計算機科学 急ぎです、大学数学再帰の問題難しくてがわからないです。 以下の4つの文字列を連結して新たに生成できる 1 2023/05/17 20:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでの計算式もしくはシ...
-
Excelで時給計算、10:30時間を...
-
6ヶ月経過日を算出する式
-
excel 段階式歩合給与計算につ...
-
【VBA】結合セルの値をoffsetで...
-
拡張子はなぜ、大文字と小文字...
-
コマンドプロンプトで出来ること
-
LAME.EXE をダウンロードしたい...
-
フォルダの中に1個しかファイ...
-
Excelの「アクセシビリティ 検...
-
複数のフォルダへ同時にファイ...
-
windows (ウィンドウズ) の 「...
-
Androidアルバムの画像を消去で...
-
コマンドプロンプトからファイ...
-
ひとつのファイルを一括で複数...
-
windowsムービーメーカで音をい...
-
拡張子の表示/非表示の切り替え
-
iTunes
-
デスクトップのアイコンが黒く
-
98SE USB インストール中に uhc...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでの計算式もしくはシ...
-
6ヶ月経過日を算出する式
-
Excelで時給計算、10:30時間を...
-
Excelで四捨・六入がしたいです
-
エクセルで簡単に粗利と利益率...
-
一月の連休の求め方
-
excel 段階式歩合給与計算につ...
-
エクセルで行が飛んだセルを一...
-
【VBA】結合セルの値をoffsetで...
-
データの中に同じ名前の顧客が...
-
エクセルについて
-
至急!!エクセル得意な方助けて...
-
エクセル 数字並び替え
-
excel 顧客人数の年代別集計
-
拡張子はなぜ、大文字と小文字...
-
フォルダの並び替えの項目を固...
-
フォルダの中に1個しかファイ...
-
ひとつのファイルを一括で複数...
-
Excelの「アクセシビリティ 検...
-
複数のフォルダへ同時にファイ...
おすすめ情報