• ベストアンサー

エクセルで時刻表示されたON/OFFから1日の総運転時間を求めたいのですが

エクセルで 「1日の機械の総運転時間」を求めたいのですが、、 OFF  2009/6/16 0:32 ON   2009/6/15 23:03 OFF  2009/6/15 18:00 ON   2009/6/15 17:15 OFF  2009/6/15 17:00 ON   2009/6/15 16:05 OFF  2009/6/15 15:30 ON   2009/6/15 14:34  ・  ・ このようなデータがあるとして 「1日の総運転時間を求める方法」 があれば教えてほしいです。

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

  • ベストアンサー
  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.3

右の空いた列に 1回の運転時間を求める計算式を入力して、最後にその列の時間を合計すれば O K A列に ON/OFF、B列に日付と時間、C列が空いているのであれば C列に  =IF(A1="OFF",B1-B2,"") などの関数式を入力して時間を求めてください  ※ この関数式をC1セルに入力して必要な行までコピーすれば2行目以下の入力を省略できます あとは D列のどこかに SUM関数で合計を求める式を書けば完成です SUMPRODUCT関数や配列関数で一発で求めることもできますが、どのように計算しているのか 目で見て分かる方が理解しやすいと思いますので、上記の方法をお奨めします B列が文字列になっていると計算できないかもしれません DATEVALUE関数やTIMEVALUE関数を使って時間に直してから計算してみてください また、SUM関数で求めた合計が数値になって時間で表示されない可能性があります セルの表示形式で時間表記になるように設定してください

syu7819
質問者

お礼

大変参考になりました、ありがとうございます!

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! 参考になるかどうか分かりませんが・・・ 考え方としてスイッチが「ON」~「OFF」の間を合計すれば良いと思いますので、 まず、↓の画像のように時刻の昇順でデータを並び替えしています。 次にC3セルを =IF(A3="OFF",(B3-B2)*24,"") としてオートフィルで下へコピーしています。 すなわち、スイッチがONになった時点からその行のOFFまでの時間を計算し、 それをC11セルに ==SUM(C2:C9) で合計しているだけです。 表示されている数値は時間になっていますので 余り桁数が多い場合は小数点表示桁下げで調整してみてください。 以上、参考になれば幸いです。m(__)m

syu7819
質問者

お礼

大変参考になりました、ありがとうございます!

  • Sinogi
  • ベストアンサー率27% (72/260)
回答No.1

最上部が1行目 日時がB列として C1に =B1-B2  C2はブランク C1とC2をコピーして必要範囲に貼り付け C列が時刻表示なっていなければ書式で調整してください。 

syu7819
質問者

お礼

大変参考になりました、ありがとうございます!

関連するQ&A