エクセルで時間帯別の集計を出す方法

このQ&Aのポイント
  • エクセルで時間帯別の集計を出す方法を教えてください。
  • 関数がうまく機能しないため、時間帯ごとに「1」の数をカウントする方法を知りたいです。
  • 他者が作成したシートを改変できないため、助言をいただけると助かります。
回答を見る
  • ベストアンサー

エクセル 時間帯別集計を出したい!

エクセルで時間帯別の集計を出したいのですが 関数がうまくできません。 C,D,Eには表示上0,1となっていますが 別シートを読み込んでいて数値ではなく 文字列として入っています。 「1」の数を時間帯ごとにカウントしたいです。 *「1」が数値として入っているのかと思い  SUMIFS関数使用しようとしたらできませんでした・・・  B   C   D    ...      G   H   I 時間  顧客A 顧客B  ...      22時  23時  0時 22:05  1   0  ...  顧客A 1   0   23:16  0   1   ...   顧客B 0   1 他者が作成したシートで改変できなかったので お知恵を貸していただけると幸いです。

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

  • ベストアンサー
  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.2

数式ではなく 元データを数値化してピボットテーブルで集計すればしまいだとは 思います。 流通の計算 =SUMPRODUCT((TEXT($B$5:$B$16&"","h時")=N$4)*$C$5:$C$16)

miffy007
質問者

お礼

ありがとうございます! 簡単にできました!!

その他の回答 (1)

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.1

> 「1」の数を時間帯ごとにカウントしたいです。 B列ですが シリアル値ですか? だとして日付の情報は含まれていましょ うか? つまり「22:01」となっていますが実は「2015/1/9 22:01」という ことはないでしょうか。 また「数値ではなく文字列として入っています。」とのことですが SUMで 範囲を集計しても合計は「0」になるということでしょうか。

miffy007
質問者

補足

早速ありがとうございます。 B列は時間のみになっています「22:05:00」など。 A列に日付データがあったりします。 数値でなく文字列・・・の意味ですが、 別シート参照しており、○がついているところを1として表示させているようで ブランク箇所が0になっています。 SUMで集計をすると文字列部分が合計せず・・・といった具合です。 いかんせん、元データいじれないもので困っております。

関連するQ&A

  • エクセル関数を使用したデータ集計について

    関数の質問です。 仕事でデータ集計をしており、 あるデータを他のシートに集計できる関数はありますでしょうか。 具体的には、 添付画像のような Aの表に、Bのデータを、Cのルールを 用いて、集計したいです。 Vlookupとsumifsを用いろうとしましたが、うまくいきませんでした。 B-2のデータをvlookにして、 sumifsの式のデータ範囲の中にいれましたが、うまくできません。 補足 B-2の列をvlookで他の列に集計せずに、関数のみでBのシートからいきなりAの集計表に集計したいです。 (理由は、数字をあちこちに貼り付けると、その照合をしなくてはならないため、あちこちには貼りたくないのです) 関数は一つのセルの中に複数組み合わせるのは、もちろん問題ありません。 よろしくお願いいたします。

  • エクセルで複数のシートからデータを集計したい。

    エクセルで複数のシートから、あるデータを取り出し、別のシートに集計したいのですが、関数を入力すると莫大な量になってしまいました。 関数とは別の方法で集計する方法をご教授お願いします。 1日~31日のシートがあります。 シート1日内容は A   B    C    D      E     1  NO  原因(1) 原因(2)  原因(3)   2 101   10       15   (b2+c2+d2)  3 105   20   40       (b3+c3+d2) 4 108       20   100 (b4+c4+d4) といった内容です。 1日から31日のセルA2などは固定した数値でありません。 なんで、例えばA3に101が入っている場合があります。 集計シートは A   B    C    D      E     1  NO  原因(1) 原因(2)  原因(3)   2 101               (b2+c2+d2)  3 102               (b3+c3+d2) 4 103              (b4+c4+d4) のようになってます。 B2に=SUMIF('1日'!A2:A4,A2,'1日'!b2:b4)+SUMIF('2日'!A2:A4,A2,'2日'!b4:b4)+・・・・・が31日のシート分まで作成するとファイルが重くなりすぎてしまい困っております。 よろしくお願いします。

  • エクセル 集計について教えてください!

    エクセルで、特定の列に該当する条件に当てはまる数を数えたい時、 どの関数を使えばいいでしょうか。 エクセル得意な方、教えてください。 たとえば、 A列=果物名(もも、りんご、みかん、ぶどう…etc) B列=仕入れた店名(全国各地の店名) C列=仕入れた個数 D列=入荷した日にち を、日ごとに年度でまとめたエクセル表あるとします。 別シートに、 果物ごとに、月別でいくつ仕入れたか、集計したい時にはどの関数を使えばいいでしょうか。 A2、A3、…~果物名 B2行、C2行、…~各月 として、仕入れた数を合計する、という表にしたいです。 (どの店で、という条件は不要です) SUMIFSを使えばいいのかなと思ったのですが、 月別の条件になると、別の関数もいるのかとか、 ただ数を数えるなら、COUNTIFでいいのかとか、色々考えていたら、 どう組み合わせればいいかわからなくなりました…。 オートフィルタやマクロではなく、関数で作りたいのです。 教えてください。 どうぞよろしくお願いします。 ちなみに、エクセルは2010を使っています。

  • 別シートに勉強時間の集計 これに集計期間を指定

    お世話になっています 質問No.9097443 質問No.9089695  質問No.9104294でご指導いただきました。 ◎希望条件 勉強時間を集計したシートA列:科目 B列:開始日 C列:開始時刻 D列:終了日 E列:終了時刻 の記載があるsheet1には終了時刻から開始時刻を差し引いた作業時間を表示する列がない。 sheet1に差引の作業時間列を追加することなく、別のシートで各科目の勉強時間を集計する方法を教えてもらいました。 ************************************************************************************* ◎レクチャー頂いた内容は Sheet3のA列とB列を作業列として使用して、Sheet2に科目ごとの勉強時間の合計を集計するものとします。 Sheet3のA2セルに次の関数を入力して下さい。 =IF(INDEX(Sheet1!$A:$A,ROW())="","",IF(COUNTIF(Sheet1!$A$1:INDEX(Sheet1!$A:$A,ROW()),INDEX(Sheet1!$A:$A,ROW()))=1,ROW(),"")) Sheet3のB2セルに次の関数を入力して下さい。 =IF(OR(INDEX(Sheet1!$B:$B,ROW())="",INDEX(Sheet1!$C:$C,ROW())="",INDEX(Sheet1!$D:$D,ROW())="",INDEX(Sheet1!$E:$E,ROW())=""),"",IF(ISERROR(1/(YEAR(INDEX(Sheet1!$B:$B,ROW()))>1904)/(INDEX(Sheet1!$C:$C,ROW())+0>=0)/(INDEX(Sheet1!$C:$C,ROW())+0<1)/(YEAR(INDEX(Sheet1!$D:$D,ROW()))>1904)/(INDEX(Sheet1!$E:$E,ROW())+0>=0)/(INDEX(Sheet1!$E:$E,ROW())+0<1)),"",IFERROR(TEXT(INDEX(Sheet1!$D:$D,ROW())+INDEX(Sheet1!$E:$E,ROW())-INDEX(Sheet1!$B:$B,ROW())-INDEX(Sheet1!$C:$C,ROW()),"[h]:m:s")+0,""))) Sheet2のA2セルに次の関数を入力して下さい。 =IF(ROWS(A$1:A2)>COUNT(Sheet3!$A:$A),"",INDEX(Sheet1!$A:$A,SMALL(Sheet3!$A:$A,ROWS(A$1:A2)))) Sheet2のB2セルに次の関数を入力して下さい。 =IF($A2="","",TEXT(SUMIF(Sheet1!$A:$A,$A2,Sheet3!$B:$B),"[h]:m:s")+0) ************************************************************************************* ◎☆今回は、このシートに集計期間を設定したいのですが、 可能でしょうか。  上記のやり方だと、Sheet1の全ての日付の項目を集計してしまいます。  そこで、  D3に集計指定期間開始日  E3に集計指定期間終了日 を設定するなどしてできないでしょうか。  sheet!1に指定期間日を設定しないやり方でしたら、Sheet2でもSheet3にでもどちらでもいいのですが。  よろしくお願いします。

  • エクセルの同じシート内で別の集計をしたい場合。

    エクセル関数で教えて下さい。 下記の図で販社の中で拠点ごとの集計をしたいのですが各拠点に同じ拠店名があるので うまく集計できません。 あと同じ列でCCCとDDD列だけは拠店集計ではなく販社の集計をしたいです。 まとめると… AAA 東店→○○円 南店→○○円 BBB 東店→○○円 南店→○○円 CCC+DDD 拠点ALL集計→○○円 SUMIFS関数を試してみましたがどうしても集計できません。 入力した関数は=SUMIFS(H:H,C:C,"AAA",D:D,"東店") です。 宜しくお願いいたします。

  • Excelでの別シート集計について

    Excelで月別、項目別で時間を集計するシートを作成しようとしています。 シート2ではシート1 F列コード別に集計してD列の時間データを月別に合計 シート3ではシート1 F列コードとG列コード別(Fが1001でGが1001、、、)に集計してD列時間データを合計、という表データにして抽出したいと考えています。 シート1には K欄に年月を表示  =IF(OR(A7="",B7="",C7=""),DATE(2100,12,31),DATE(A7+2000,B7,C7)) L列にF列コード+年月  =F7&(2000+A7)&B7 M列にG列コード+年月  =G7&(2000+A7)&B7 というところまでは設定したのですが、出力先となるシート2、シート3にはどのような設定をすればよいのか行き詰っています。 なにとぞ易しい回答をよろしくお願い申し上げます。

  • 別シートに勉強時間の集計結果を表示 仕組みが・・・

    お世話になっています 質問No.9097443 及び 質問No.9089695 でご指導いただきました。 勉強時間を集計したシートA列:科目 B列:開始日 C列:開始時刻 D列:終了日 E列:終了時刻 の記載があるsheet1には終了時刻から開始時刻を差し引いた作業時間を表示する列がない。 sheet1に差引の作業時間列を追加することなく、別のシートで各科目の勉強時間を集計する方法を教えてもらいました。 レクチャー頂いた内容は ************************************************************************************* Sheet3のA列とB列を作業列として使用して、Sheet2に科目ごとの勉強時間の合計を集計するものとします。 Sheet3のA2セルに次の関数を入力して下さい。 =IF(INDEX(Sheet1!$A:$A,ROW())="","",IF(COUNTIF(Sheet1!$A$1:INDEX(Sheet1!$A:$A,ROW()),INDEX(Sheet1!$A:$A,ROW()))=1,ROW(),"")) Sheet3のB2セルに次の関数を入力して下さい。 =IF(OR(INDEX(Sheet1!$B:$B,ROW())="",INDEX(Sheet1!$C:$C,ROW())="",INDEX(Sheet1!$D:$D,ROW())="",INDEX(Sheet1!$E:$E,ROW())=""),"",IF(ISERROR(1/(YEAR(INDEX(Sheet1!$B:$B,ROW()))>1904)/(INDEX(Sheet1!$C:$C,ROW())+0>=0)/(INDEX(Sheet1!$C:$C,ROW())+0<1)/(YEAR(INDEX(Sheet1!$D:$D,ROW()))>1904)/(INDEX(Sheet1!$E:$E,ROW())+0>=0)/(INDEX(Sheet1!$E:$E,ROW())+0<1)),"",IFERROR(TEXT(INDEX(Sheet1!$D:$D,ROW())+INDEX(Sheet1!$E:$E,ROW())-INDEX(Sheet1!$B:$B,ROW())-INDEX(Sheet1!$C:$C,ROW()),"[h]:m:s")+0,""))) Sheet2のA2セルに次の関数を入力して下さい。 =IF(ROWS(A$1:A2)>COUNT(Sheet3!$A:$A),"",INDEX(Sheet1!$A:$A,SMALL(Sheet3!$A:$A,ROWS(A$1:A2)))) Sheet2のB2セルに次の関数を入力して下さい。 =IF($A2="","",TEXT(SUMIF(Sheet1!$A:$A,$A2,Sheet3!$B:$B),"[h]:m:s")+0) ************************************************************************************* 実践できたものの、仕組みが複雑でわかりません。 Sheet3のA2では、IF関数の中で、COUNTIF関数が使われていますが、なんのためなのかわかりません。 Sheet3のB2セルには関数の中に">1904"と数値の1904より大きい値を指定する関数が組み込まれたいますが、なんのためか理解できていません。 Sheet2のA2では、「Sheet2のA1:A2がSheet3のA列より大きい」という条件に適合しなかった場合、最小値を求める計算をしていますが、何のために行っているのかわかりません。 Sheet2のB2では、A2に適合しなかった場合、Sheet1のA列から何かを何かの条件に一致したものを合計して時間表示していますが、よくわかりません。 簡単でいいので、解説をお願いできませんでしょうか? すみません、理解力が乏しいもので申し訳ありませんが、よろしくお願い致します。

  • エクセル SUMIF関数

    SUMIFS関数で行き詰っています。ご教授願います。  A   B  C  D  ・・・AE AF AG・・・・・ 1    4月4月4月・・・・・・・・・・・・・5月・・・・←関数用 2    4/1 4/2 4/3・・・4/30 合計 5/1・・・6/30 3北海道 3  0  1 4東京  0  2  5 5東京  4  1  0 6神奈川 1  7  0 という表から下記の別表のように月毎・県毎の集計をしたいのですが、 現在は月毎に1列合計列を作成し、そこを使ってSUMIF関数で集計しています。 別表  A   B  C  D 1    4月 5月 6月 2北海道 4 3東京  12 4神奈川 8 合計行をなくし、SUMIFS関数で集計はできないものでしょうか? うまくいかない現在のSUMIFS関数は下記です。(恥ずかしい) SUMIFS(B3:XX6,A3:A6,別表A1,B1:XX1,別表B1) ※北海道 4月を集計 これでは「#VALUE!」です。 今まで通り月毎にSUMIFで集計するのは手間なので、どなたかご教授願います。

  • Excelで日付別の集計を取るやり方

    実際の内容とは違いますが例えとして、 添付の画像のように、A列に日付が並んでいます。注文が入り次第下に追記していくので日にちはランダムです。 B列に商品名がそれぞれ並びます。 ここからが質問で、 上記シートの隣に集計用シートを作りたいと思っています。 集計用シートでは、日付が1列にカレンダーのように並んでいて、そこに商品の数を拾って出したいと思っています。 縦軸にカレンダー(日付) 横軸にA,B,C,D それぞれ日毎の数量をカウントするようにしたいです。 どのような関数、操作になりますでしょうか? 初級者のため、易しく教えていただければ幸いです。 よろしくお願いします。

  • エクセル2003ですが、集計でわかりません

    エクセル2003ですが、集計でわかりません。 セルA1からA10までで、H18(といる指定英数字)に該当、セルB1からB10までで、(数値)3に該当、そして、セルC1からC10までの間で、この両者を満たすセルの数値(セルC1からC10までの間でこれに該当するものが複数ある場合は、それらの合計の数値)を、指定したセルD1に表示したい場合、セルD1へ入れる、関数式はどうなるのでしょうか? 仕事上必要になりました。 どなたか、教えていただけないでしょか?(急ぎます) ごめんなさい。

専門家に質問してみよう