• ベストアンサー

複数の関数を組み合わせる方法

曜日 開始時間 終了時間 実働時間 月   9:00  12:45  3:45 火   9:30  11:30  2:00 水   9:00  11:30  2:30 月   13:00 15:00  2:00 月   15:00 16:45  1:45 上記のデータから以下の条件を満たしたデータだけを抽出したいのですが どう関数を組み合わせれば良いか教えて下さい。 [条件] (1)曜日は月である。 (2)終了時間が12:00以前 (3)実働時間が3時間未満 上記のデータの場合、件数結果は1件となる。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.6

(1)DCOUNTによる (2)SUMPRODUCTによる(既に回答あり) (3)配列数式による (3)で (例データ)質問例を一箇所変更 曜日 開始時間 終了時間 実働時間 月 9:00 12:45 3:45 火 9:30 11:30 2:00 水 9:00 11:30 2:30 月 13:00 11:00 2:00 月 15:00 16:45 1:45 (関数式) =SUM(IF((A2:A6="月")*(C2:C6<TIMEVALUE("12:00:00"))*(D2:D6<TIMEVALUE("3:00:00")),1,0)) といれて、SHIFTキーとCTRLキーを押しながら、ENTERキーを押す。 (結果) 1

その他の回答 (5)

  • gloomie
  • ベストアンサー率16% (24/146)
回答No.5

上記例でデータがA2からD6まで入っているとします。 =SUMPRODUCT((A2:A6="月")*(C2:C6>=TIMEVALUE("12:00"))*(D2:D6<=TIMEVALUE("3:00"))) 上記の場合、答えは0となるはずですが・・・? 月曜で12:00前に終了してるものは無いですよね? あと抽出と書いてありますが、数を数えたいのですよね? 解釈が間違えていたらご指摘ください。

  • sero
  • ベストアンサー率47% (916/1944)
回答No.4

失礼しました。データ件数が知りたいのではなく抽出したいという事なんですね。

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

抽出なら「データ」「フィルタ」「オートフィルタ」で 各項目で▼を押して「オプション」で 「曜日」:「月」「と等しい」 「終了時間」:「0.5」「以下」 「実働時間」:「0.125」「より小さい」 と設定する。 件数のカウントなら =SUMPRODUCT((A2:A6="月")*(C2:C6<="12:00")*(D2:D&<"3:00"))

  • sero
  • ベストアンサー率47% (916/1944)
回答No.2

条件を満たす式なら =SUMPRODUCT(($A$2:$A$6="月")*($C$2:$C$6<0.5)*($D$2:$D$6<0.125)) ただ、質問文では該当データは0件です。 (終了時間が12:00以前なのは火水だけなので)

回答No.1

この場合、オートフィルタが便利です。 (1)曜日から実働時間までのセルを選択し、データ/フィルタ/オートフィルタ選択 (2)曜日の▼マークをクリックし、月を選択 (3)終了時間の▼マークをクリックし、オプションから12:00 以下(▼マークより選択) (4)実働時間の▼マークをクリックし、3:00 より小さい を選択

関連するQ&A