• ベストアンサー

時間の抽出、合計

セルに以下のように入力されているとします。 A        B 1  6月29日    8:00 2  6月30日    8:00 3  7月1日     8:00 4  7月2日     8:00 5  7月3日     8:00 6  7月4日     8:00 7  7月5日     0:00 8  7月6日     0:00 9  7月7日     8:00 10 7月8日     8:00 7月の時間の合計を出すには =SUMIF(A1:A10,"7月*"、B1:B10)だと思ったのですが、0:00となってしまいます。 オートフィルターを使わず、関数だけで計算するにはどうしたらよろしいのでしょうか?

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

A列が文字列ではなく日付シリアル値だからヒットしません。 =SUMIF(A1:A10,">2008/07/01",B1:B10)で7月1日以上を計数でしますが検索範囲に8月以降が含まれていれば、 =SUMIF(A1:A10,">2008/07/01",B1:B10)-SUMIF(A1:A10,">2008/07/31",B1:B10) 因みに他の方法としては、=SUMPRODUCT((MONTH(A1:A10)=7)*(B1:B10))もあります。 尚、時間抽出セルの書式設定で表示形式をユーザ定義で[h]:mmとしないと24時間以上が表示できませんでご留意下さい。

allinone
質問者

お礼

回答ありがとうございます。 はい、正にシリアル値なので、計算できなかったようです。

その他の回答 (4)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.5

NO2です。 日付の条件設定に誤りがありましたので訂正します。 =SUMIF(A1:A10,">2008/06/30",B1:B10)で7月1日以上を計数でしますが検索範囲に8月以降が含まれていれば、 =SUMIF(A1:A10,">2008/06/30",B1:B10)-SUMIF(A1:A10,">2008/07/31",B1:B10)

allinone
質問者

お礼

度々ありがとうございます。

  • keirika
  • ベストアンサー率42% (279/658)
回答No.4

=SUM(IF(MONTH(A1:A10)=7,B1:B10)) を入力し、 Ctrl+Shift+Enter で確定。 式の入力に成功すると式が{}で囲まれます。

allinone
質問者

お礼

回答ありがとうございます。 回答の式で算出できました。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

SUMIF関数のみでだすのなら =SUMIF(A1:A10,">=2008/7/1",B1:B10)-SUMIF(A1:A10,">=2008/8/1",B1:B10) です。 期間が月限定なら、別列に年月を関数で抽出するとか #2のかたのようにSUMPRODUCT関数ですかね。 EXCEL2007の場合だけなら、新しい関数SUMIFSで =SUMIFS(B1:B10,A1:A10,">=2008/7/1",A1:A10,"<=2008/7/31") という方法もあります。

allinone
質問者

お礼

回答ありがとうございます。 計算できなかったのはシリアル値だった為と思われます。 SUMIFSって関数あるんですね。ちなみにオフィスのバージョンが低いのでありませんでしたが・・・

  • Tiffa9900
  • ベストアンサー率31% (68/216)
回答No.1

SUMIFの検索条件にワイルドカード(*とか?とか)が利用できない為、"7月*"という条件にマッチしていない為と思われます。 色々と方法はあると思いますが、単純に考えれば C列に「=month(A1)」~「=month(A10)」といった月を抽出する関数を設定し、 「=SUMIF(C1:C10,7,B1:B10)」といった抽出を行えばいいのではないでしょうか。 尚、セルの書式が「h:mm」になっていると、0:00も24:00も48:00も「0:00」と表示されます。 書式をユーザー定義で「[h]:mm」としてみてください。

allinone
質問者

お礼

回答ありがとうございます。 C列に挿入したら可能になりました。

関連するQ&A

  • 曜日を条件に検索をしたいです。

    A列には「yy/m/d (aaa)」形式で(今日なら07/10/25 (木)) 土、日、祝日を抜いた日付が A1セルからA1000セルまで入力されています。 (データは日々増えていきます) B列にはランダムな数字が入っています。 やりたいこと1 オートフィルタで 「(月)」のデータを摘出したいです。 オートフィルタのオプションで(月)を含むで検索しても 何もヒットしません。 やりたいこと2 月火水木金それぞれのB列の合計が知りたいです。 SUMIF関数で「=SUMIF(A:A,"月",B:B)」 と入力しても0になってしまいます。 よろしくお願いします。

  • Excel2003 ユーザー定義関数 で SUBTOTALとSUMPRODUCTの複合できますか?(複数条件)

    こんばんは。お願いします。 まず、セルA2、B2にそれぞれフィールド名"あ"、"い"があるとします。 この2列目以下にオートフィルターを使います。 A列のA3,A4…には文字列"a","b","う",または"かき"が入っていて、 B列のB3,B4…には数値(整数)が入っているとします。 このとき、セルB1にVBAで作成した関数を入れたいと思っています。 Excel2003です。 その関数は、以下の条件(1)と(2)を同時に満たします。 (1)A列が"a"または"かき"である場合のみ、その行のB列の数値の合計を計算する(SUMIF関数で可能) (2)オートフィルターを用いて抽出したら、表示されているB列の数値だけの合計を計算する(SUBTOTAL関数で可能) (3)作業列は使えません。 要するに、表示されているセルのうち、条件にあうもののみ計算したい、ということです。 もしこのようなことがワークシート関数でもできるのであれば、それで構いません。 どうぞ、よろしくお願いいたします。

  • ある一定時間を超えた場合の超えた時間のみを合計する方法をご存知でしたら

    ある一定時間を超えた場合の超えた時間のみを合計する方法をご存知でしたら教えてください。 例えば、1日8時間労働を8.0として、その8.0を越える日の8.5だったら8.5-8.0=0.5の0.5の部分の月の合計=残業分の合計を出したいと考えています。 A列に氏名があり、B列~AF列まで1日~31日の労働時間が入力されているdateが40人分あります。 AG列に式を、入力するとすると 8.0を超える時間の合計を出すには=SUMIF(A1:AF1,">8.0",A1:AF1)でもとめられますが、 8.5と入力されていた場合の0.5部分の月の合計を算出するにはどうすればよいでしょうか。 宜しくお願い致します。

  • 合計値を出したいのですが、難しいです。

    計算式がすごいことになっていたので、改めて質問させてください。 すみません。 いつもお世話になっております。 SUMIFとMATCHを使って、1月から6月までのデータの合計を出したいのですがなかなかうまくいきません。。。 下記に貼り付けてみましたが、ちょっとわかりにくいですよね。。。 何をやりたいかというと、M1がリファレンスで、M5が月。 M21という項目にあるデータの1月から6月までの数字の合計を出したいのです。 一番下を見るとわかるのですが、3001の合計をSUMIFで出すことができます。 ただその場合、どの行か指定しないとなりません。(この場合C2:C14) それをMATCHで探し出してくれないかなと、やってみたのですが、どうやらうまくいきません。 どなたかお分かりになる方教えてください!!! Aセル  Bセル   Cセル   Dセル M1    M5      M21    M735 3001    1      300     80 3001    2      500     60 3001    3      200     20 3001    4      100    4000 3001    5      10     960 3001    6       3      5 3002    1      700     62 3002    2       90     4 3002    3      160 3002    4       10    55 3002    5       15    56 3002    6       60    12 Fセル  Gセル  M1     M21 3001   =SUMIF(A2:D14,F3,C2:C14) 3002   =SUMIF(A2:D14,F4,match(G2,A2:D2,0))

  • SUMIFで出した合計をオートフィルタ別にしたい

    利益損益の合計を出したいので利益を=SUMIF(N1:N100;">0")、損益を=SUMIF(N1:N100;"<0")という形で集計しています。 この利益損益の合計を月別、週別、曜日別、時間別、さらには何曜日の何時なら・・・ と細かく絞って合計を見たいので、オートフィルタで絞ると合計の表に反映出来ないかと考えています。SUBTOTALでSUMIFを使いたいイメージです。 損益合計値は=SUBTOTAL(9;N1:N100)でオートフィルタに反応して合計値を変えられたのですが、SUMIFで計算している利益、損益をオートフィルタに反応させる方法があれば教えて頂けませんか?

  • Excelで勤務時間の合計

    Mac/OS10.5.8でExcel2008を使って時間合計をしていますが、微妙にトラブルが起きてエラーが出てまともに使用できません。 セル内を時間表示に設定して"12:12"と時間を入力して一日分を入=A1と出=B1として関数=SUN(A1:B1)で"C1"へ合計しようとしたらトラブルで集計出来なかったので "(A1:B1)"の部分を手入力で入力し直してC1へ集計しました。 今度は月合計を同じく"=SUN(C1:C31)"としても合計が合いません。 何か解消法はあるではしょうか

    • 締切済み
    • Mac
  • 抽出して合計をだしたい

    このような表があるとします A  B 鈴木 1 鈴原 2 山内 4 山田 3 大原 1 A列で”鈴”または”山”の字を含む人のBの値の合計をだしたいのですが。 使う関数はSUMIFを使うのでしょうか? どなたかご教授の程よろしくおねがいします

  • Excel関数:SUBTOTALとSUMIFを組み合わせる?

    下記のような場合の集計ができる関数を教えて下さい。 SUBTOTALとSUMIFを組み合わせようと思ったのですが、うまくいきませんでした。 よろしくお願いします。 <表の内容> ・セルA1:「ランク」 ・セルA2~A50:「A」or「B」or「C」を入力している ・セルB1:「金額」 ・セルB2~B50:各金額を入力している <集計方法> ・セルB51に「ランクが"A"」の金額合計を表示したい ・ただしオートフィルターを使って他の条件で抽出もおこなっているのでSUBTOTAL関数のように、表示されている行の値のみを合計したい

  • エクセル2000  合計するセルの個数を任意に変更

    2つの疑問が生じました。ご存知の方がいらっしゃいましたら、お時間の許す方にご回答をお願いします。 【1】 B1からB1000、C1からC1000までにデータが入力されているとします。 A1に3を入力するとD1にB1以下3個のセルの合計 A1に4を入力するとD1にB1以下4個のセルの合計 ・・・・・・・・・・ A1にxを入力するとD1にB1以下x個のセルの合計を表示したいのですが、このときのD1の関数式。 【2】 A1に3を入力するとE1に〔B1以下3個のセル〕と〔C1以下3個のセル〕の合計 A1に4を入力するとE1に〔B1以下4個のセル〕と〔C1以下4個のセル〕の合計 ・・・・・・・・・・・・ A1にxを入力するとE1に〔B1以下x個のセル〕と〔C1以下x個のセル〕の合計を表示したいのですが、このときのE1の関数式。 以上似たような質問なのですが、よろしくお願いいたします。

  • 合計値を出したいのですができません。。。。

    いつもお世話になっております。 SUMIFとMATCHを使って、1月から6月までのデータの合計を出したいのですがなかなかうまくいきません。。。 下記に貼り付けてみましたが、ちょっとわかりにくいですよね。。。 何をやりたいかというと、M1がリファレンスで、M5が月。 M21という項目にあるデータの1月から6月までの数字の合計を出したいのです。 一番下を見るとわかるのですが、3001の合計をSUMIFで出すことができます。 ただその場合、どの行か指定しないとなりません。(この場合C2:C14) それをMATCHで探し出してくれないかなと、やってみたのですが、どうやらうまくいきません。 どなたかお分かりになる方教えてください!!! Aセル  Bセル   Cセル Dセル M1 M5 M21 M735 3001 1 300 80 3001 2 500 60 3001 3 200 20 3001 4 100 4000 3001 5 10 960 3001 6 3 5 3002 1 700 62 3002 2 90 4 3002 3 1 60 3002 4 10 55 3002 5 15 56 3002 6 60 12 Fセル  Gセル  M1 M21 3001 =SUMIF(A2:D14,F3,C2:C14) 3002 =SUMIF(A2:D14,F4,match(G2,A2:D2,0))

専門家に質問してみよう