• ベストアンサー

度数分布を元に間隔を変更した度数分布を作る

Excelで、このような度数分布表が既にあります。 間隔は10で、頻度0のものは行自体が存在しません。 resp count 0 49000 10 7000 210 1 230 1 250 1 280 1 290 1 320 2 340 1 370 1 400 2 ここから、間隔を100にした度数分布表を作りたいです。 resp count 0 56000 100 0 200 5 300 4 400 2 どうすればいいでしょうか? VBAでゴリゴリ書くしかない?

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

元々の表がA1から始まっていて、新しい表をその横のD1から始めるとします。 1行目は項目名、resp count 2行目 D2には 0 E2には =SUMPRODUCT((($A$2:$A$12)<(D2+100))*($B$2:$B$12)) 3行目 D3には =D2+100 E3には =SUMPRODUCT((($A$2:$A$12)<(D3+100))*($B$2:$B$12))-SUM(E$2:E2) 以下、D3:E3を下にコピー これでどうでしょう?

SH2
質問者

お礼

ありがとうございました。動作を確認しました。 No.2の方の回答も参考にして =SUMPRODUCT((($A$2:$A$12)<(D2+100))*(($A$2:$A$12)>=D2)*($B$2:$B$12)) としました。

その他の回答 (1)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

タイトルが1行目でデータが2行目からとして、resp、countがA列、B列(2~12行)にあると仮定 C列に100ピッチのrespを作成(0、100、200・・・・)(C2から) D2に  =SUM(IF(($A$2:$A$12>=C2)*($A$2:$A$12<C2+100),$B$2:$B$12,0)) を入れて、配列数式として入力。(Ctrl +Shift+Enter) D1を下にオートフィルで出ると思います。 区切りのどちら側を含むかなどについては、修正してください。

SH2
質問者

お礼

ありがとうございました。動作を確認しました。 恥ずかしながら、配列数式というものを初めて知りました。 大変勉強になりました。