• ベストアンサー

時間のうち、ある時間帯だけ抽出したい。

二つのセルにそれぞれ時間をいれると、その間の時間を求めたいとおもうんですが、if文だらけになってしまいます、0:00~5:00 5:00~7:00 8:45~と分けて時間を抽出したいと思います。その場合どのような計算式でできるのでしょうか?なるべく簡単にできるとありがたいです。 以下のようにしたいです。A3~C3のところに式をいれたいと思います。     1       2      3 A 1:00  (0:00~5:00) 4:00 B 6:30   (5:00~7:00)  1:30 C         (8:45~)    0:00 

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

  • ベストアンサー
  • Ki4-U2
  • ベストアンサー率81% (364/446)
回答No.1

excel 関連の質問ですね。 (「Office系ソフト」のカテゴリで質問された方が、回答が来やすいと思いますよ) A3 =MIN(B1,"5:00") - MIN(A1,"5:00") B3 =MIN(MAX(B1,"5:00"),"7:00") - MIN(MAX(A1,"5:00"),"7:00") C3 =MAX(B1,"8:45") - MAX(A1,"8:45") B3 の式で解説すると、  前半の式…B1 が 5:00 以前なら 5:00、5:00~7:00 ならその時刻、7:00 以降なら 7:00  後半の式…A1 について同様 となります。 ・A1、B1 とも 5:00 以前なら、前半・後半とも 5:00 となるので、その差し引きは 0:00 ・A1 が 5:00 以前、B1 がたとえば 6:30 なら、前半が 6:30 、後半が 5:00 となり、差し引きは 1:30 …というようになります。

Coo121493
質問者

お礼

>excel 関連の質問ですね。 (「Office系ソフト」のカテゴリで質問された方が、回答が来やすいと思いますよ)  カテゴリーわからなくてすいません、今度からそうしますね。  MIN関数というのは初めて知りました(まだどのような構文なのかきちんと理解できてませんが・・これから頭整理します。)、こんなに簡単にできるのですね、仕事で使うのでたすかります、早速入れたところ見事にできました、いろいろ考えたのですが、IF文で作ったら数式が長くなりすぎて・・わけがわからなくなってしまいました、合ってるのだろうか不安になったため、もっと簡単に理解できる範囲くらいの長さでできないものかと思い、ご質問したわけです。本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excelにおけるデーター抽出

    Excelのシートに記載されている内容は次の通りです。 (1) セルA5~A60の間に1~56の昇順の番号 (2) セルB5~B60には氏名 (3) セルC5~C60には○、×、△の記号 このシートからC列が ○ の記号が付与されている者だけの氏名を別のシートのB7~B**の間に抽出するのですが、抽出したシートの行に空白ができないようにするには式をExcel関数で作成することは可能でしょうか? 若し、不可能でしたらマクロで行う場合のプログラムを教えて下さい。

  • エクセルで時間計算

    エクセルで時間計算をしているのですが A1セルに開始時刻  B1セルに終了時刻  C1セルは作業時間   9:00         4:00           7:00 このような表を作っています 「C1」には(B1+12:00)マイナス「A1」と数式があるのですが 「B1」に入る時刻が午後でなく午前11:00だと 「C1」の数式のままでは (11:00+12:00)- 9:00 で 14:00 となってしまいます 「B1」には24時間形式で午後4:00を16:00と入力すればよいのですが 24時間形式を使わず9:00マイナス4:00を正しく計算するには どのような数式にすればよいのでしょうか IF文を使うのかなとも思うのですが 見当がつきません。宜しくお願いいたします。

  • (Excel)時間と文字列を抽出

    セルに時間と文字列が一緒に入ってる場合、  これを別々のセルに抽出する方法を教えて下さい。 例えば、  A1 -> 28:51 Good Job なら  B1 -> 0:28:51 C1 -> Good Job のようにです。

  • アクセス クエリ 時間の抽出について

    アクセスのクエリで勤務時間から特定の時間帯の勤務時間を知りたい のですが、どうにもうまくいかず困っております。。 テーブルは以下となります。 ID  出勤時刻  退勤時刻 日付 1  9:00  13:15  12/1 2  9:00  18:00  12/1 3  9:00  13:00  12/1 4  10:00  19:00  12/1 5  12:00  20:30  12/1 上記のテーブルから以下の条件で勤務時間を抽出したいです。 条件A:平日 19:00 22:00 の間の勤務時間 条件B:土日祝日 9:00 19:00 の間の勤務時間 条件C:土日祝日 19:00 22:00 の間の勤務時間 それぞれの勤務時間を抽出したいのですが、これを実現できる 式をお教えいただけますと幸いです。 大変お手数をお掛け致しますが、どうぞよろしくお願いいたします。

  • Excelの時間計算

    Excelの時間計算の式を教えてください。 Aのセルに13:00、Bのセルに15:30という時間が入っている場合、隣のCのセルに2.5時間と表示させるようにしたいのですが。 普通にB-Aでやるとうまくいきません。 セルが時間のシリアル値になっているからでしょうか。よろしくお願いいたします。

  • エクセル(時間計算)教えてください

    エクセルの時間計算を教えてください 8:00以下の入力なら、8:00とでてほしくて、8:00以上の入力ならその時間がでるようにしたいのです。 (労働時間のセルB2~B5に実際の労働時間を入力すると、所定時間セルC2~C5にでるようにしたい) IFかと思うのですが、時間だとうまくいかなくて。。。 教えてください。宜しくお願いします。         A     B        C 1           労働時間  所定時間 2      Aさん  8:00     8:00 3      Bさん  6:00     8:00 4      Cさん     8:10     8:10 5      Dさん     12:30     12:30

  • EXCELで再遅時間を抽出する

    エクセルの表において、該当の日付の中から、一番遅い時間を抽出したいのです。再早時間は同じような質問内容の「再早時間の抽出」から関数をコピーして抽出することはできました。 =IF(ISNUMBER(1/DAY($C20)),IF(COUNTIF($A:$A,"<"&INT($C20)+1)-COUNTIF($A:$A,"<"&INT($C20))>0,MOD(SMALL($A:$A,COUNTIF($A:$A,"<"&INT($C20))+1),1),""),"") 上記の関数と逆で再遅時間を抽出する関数を教えていただきたいです。 具体的には↓のような資料で作成しています。

  • EXECL・複数タブからのデータ抽出

    同一Book内での処理です。 今現在の処理内容です タブAには抽出されるデータがあります。 セルA1・・・抽出キー セルB1・・・抽出データ1 セルC1・・・抽出データ2 タブBには抽出キー・抽出結果を表示するようにしています。 セルA1・・・抽出キー1 セルB1・・・抽出キー2 セルC1・・・抽出キーを合成 <=CONCATENATE(A1,"→",B1)> セルD1・・・データ抽出 <=VLOOKUP(C1,タブA!$A:$C,2,FALSE)> したいことは タブAのデータと同一内容のデータが複数タブに存在するときのデータ抽出する場合はどうすればよいのでしょうか? タブA(リンゴ)には抽出されるデータがあります。 セルA1・・・抽出キー セルB1・・・抽出データ1 セルC1・・・抽出データ2 タブB(みかん)には抽出されるデータがあります。 セルA1・・・抽出キー セルB1・・・抽出データ1 セルC1・・・抽出データ2 タブCではセルA1の内容によって抽出するデータのタブを選択しデータを抽出したい セルA1・・・抽出キー1 セルB1・・・抽出キー2 セルC1・・・抽出キーを合成 <=CONCATENATE(A1,"→",B1)> セルD1・・・データ抽出 <=ここの計算式が知りたい タブCのセルA1の抽出キーに(リンゴ)と入力されていればタブA(リンゴ)のシートよりデータ抽出 タブCのセルA1の抽出キーに(みかん)と入力されていればタブB(みかん)のシートよりデータ抽出 単にいえば、データ抽出するタブを指定して<VLOOKUP関数>を利用できるのか? できないなら実現できる手法を教えていただきたいです。 説明が難しいですが、内容がわかっていただけたでしょうか? 達人からの回答よろしくお願いいたします

  • エクセル 文字が表示されたセルを抽出したい

    エクセルの関数を教えて下さい。    A     B     C     D   1 りんご              りんご 2       プリン        プリン 3             紅茶   紅茶 4 バナナ              バナナ 5      6             緑茶   緑茶 上記のような表があります。(A~は列、1~は行番号です) A1~C6までは、IF関数で、条件にあった場合に“りんご”などを表示、そうでない場合には空白と なるような式が入っています。 そして、D列のように、それぞれの行に表示されている文字を抽出、何も表示されていない場合は空白としたいのです。 D列にはどういった式を入れればよいかを教えて下さい。 ※各行に表示されるのは1つのセルのみで、例えばA1のセルとC1のセルに文字が表示される ことはありません。A1に文字が表示されている場合は、必ずB1・C1のセルは空白です。 宜しくお願い致します。

  • EXCELの文字の抽出について

    セルA1に「taro yamada」とある場合にセルB1に「taro」、C1に「yamada」と抽出したい場合、どのようにしたらいいのでしょうか?ちなみA1の名前と名字の間は半角スペースが入っています。