こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excelにて時間の合計を計算

マクロなどは使えないoffice初心者です。
タイトルの通りなのですがExcelにて時間(時刻ではない)の合計時間の計算の仕方を知りたいのです。

例として
00時間00分32秒23
00時間00分21秒45
00時間00分18秒53

というような1/100秒まである時間(文字列)のトータル時間を計算する事は可能なのでしょうか?

Excel初心者には難しいのでしょうか?
なるべくマクロなどを使わずに済む方法があれば知りたいです。
なお、Excelのバージョンは2003および2007です
よろしくお願いします。

投稿日時 - 2009-07-13 19:31:31

QNo.5122732

困ってます

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

> いっきに変換する方法はありますでしょうか?

http://srcedit.pekori.jp/tool/excelre.html
上記を参考にして
Excel用正規表現検索ダイアログアドインを使用してください
検索する文字列
(.+?)時間(.+?)分(.+?)秒(.+?)
置換後の文字列
$1:$2:$3.$4

> また最終的に合計した数値、
> 例えば01:25:42.86という数値を01時間25分42秒86という文字に戻す方法もあれ> ばお教え頂きたいです。

こちらはちょっと分かりません。

投稿日時 - 2009-07-13 22:33:58

お礼

ありがとうございます。
おかげさまで一気に変換する事が出来ました。

投稿日時 - 2009-07-13 23:13:12

ANo.7

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(8)

ANo.8

こんばんは!
No.5です。

No.4さんの補足に
>置換する時に【時間を:に】【分を:に】【秒を.に】と3回置換をするのが面倒です。
いっきに変換する方法はありますでしょうか?

とあるので無理矢理って方法の一例です。

A列に00時間00分○○分××秒○○というデータがあり
B列に表示させるとします。
B1セル =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"時間",":"),"分",":"),"秒",".")
としてオートフィルで下へコピーします。

これで何とか一気に「置換」は出来ると思います。

次に
> 例えば01:25:42.86という数値を01時間25分42秒86という文字に戻す方法もあれ> ばお教え頂きたいです。

これも無理矢理ですが、
とりあえず合計したデータが
B5にあると仮定します。

表示させたいセルに
=TEXT(B5,"hh時間mm分ss秒.00")
と入れたら何とか表示は出来ました。
しかし、00の前のピリオドを削除するとエラーになってしまいます。

他に
=TEXT(B5,"hh時間mm分ss秒")&RIGHT(B5,2)
としてみたのですが、1/100秒の表示がB5セルの表示どおりにならないみたいです。
(シリアル値の関係かもしれません)

この程度しか分かりませんが、
参考にならなかったら読み流してくださいね。m(__)m

投稿日時 - 2009-07-13 22:49:53

お礼

ありがとうございます。
置換はkmetuさんの方法でうまく出来るようになりました。

合計の文字列の変換は書式設定の表示形式で
hh"時"mm"分"ss"秒"
とすることによりうまくいきました。
少数以下?は合計時間では切り捨てても問題ないと判断し、この方法でいくことにしました。

有り難うございました。

投稿日時 - 2009-07-13 23:22:02

ANo.6

読み込んだ時間がA1にあるとして
B1へ
=TIMEVALUE(LEFT(A1,2)&":"&MID(A1,5,2)&":"&MID(A1,8,2)&"."&RIGHT(A1,2))
とするしか思いつきません

投稿日時 - 2009-07-13 21:33:59

お礼

ありがとうございます。
Office初心者の私の知識では回答の意を汲み取る事ができませんでした。
やはり初心者が簡単には出来る事ではないのでしょうか。

投稿日時 - 2009-07-13 22:31:38

ANo.5

こんばんは!
すでに回答は出ていますが・・・

以前に同じような質問がありました。

前回は引き算でしたが、今回は足し算ですね?

方法としては同じですので
↓のURLが参考にならないでしょうか?

http://oshiete1.goo.ne.jp/qa5087816.html

ちょっと覗いてみていただければ、
お役に立てるかもしれません。m(__)m

投稿日時 - 2009-07-13 20:22:38

お礼

ありがとうございます。
参考URLをざっと見てみたのですが初心者の私にはちょっと難しすぎて理解するのに時間がかかりそう(不可能?)です。
回答くださったのに申し訳ありません。

投稿日時 - 2009-07-13 21:09:25

ANo.4

文字列ではなく
0:00:32.25
とデータを入力して書式の設定の表示形式を
[hh]"時間"mm"分"ss.00"秒"
として
後は普通に =A1+B1 などとしてみてください。

投稿日時 - 2009-07-13 20:14:02

補足

すみません、今しがたふと思い立って置換を使って数値化してみましたところとりあえずはうまくいきました。

00時間00分32秒25という文字列の
「時間」「分」を「:」に、「秒」を「.」に置換して
00:00:32.25にしました。

が、置換する時に【時間を:に】【分を:に】【秒を.に】と3回置換をするのが面倒です。
いっきに変換する方法はありますでしょうか?

また最終的に合計した数値、
例えば01:25:42.86という数値を01時間25分42秒86という文字に戻す方法もあればお教え頂きたいです。

ややこしい質問、初歩的かもしれない質問で申し訳ないです。

投稿日時 - 2009-07-13 21:18:17

お礼

ありがとうございます。
しかしSinogiさんへの回答のようにすでに文字列としてデータが存在してしまっているのです。
すでに入力されている00時間00分32秒25という文字列を0:00:32.25のように数値に変換する事は不可能でしょうか?

投稿日時 - 2009-07-13 21:12:50

ANo.3

すみません。
間違いです。
上記取り消してください。

投稿日時 - 2009-07-13 20:09:49

ANo.2

まず、セルの書式設定で
ユーザー定義 を選択
→種類の欄に hh:mm:ss.00 と入力

その設定をしたせるに
0:0:32.23 のように入力

最終行の下で Σ オートSUM

投稿日時 - 2009-07-13 20:09:19

お礼

ありがとうございます。
その方法は調べて試したところうまくいく事が分かっていました。

が、今回の場合、あるソフトで出力したCSVファイル(そのソフトではその形式でしか出力出来ないようです)なのですでに
00時間00分32秒23
00時間00分21秒45
00時間00分18秒53
というような文字列が出ているのです。
それを合計させたいのですが、すでに文字列として上記の状態である場合、数値化する事は不可能なのでしょうか?

投稿日時 - 2009-07-13 21:07:56

ANo.1

加算計算ができればいいのですね。
2003で説明します。
1.入力するセルをドラッグして範囲指定します。
2.書式(O)→セル→表示形式で→時刻→13時30分55秒→OK
3.0:0:32:23 0:0:21:45 0:0:18:53 と順次入力してゆきます。
 0時間00分32秒23等 順次表示されます。
4.Σ オートサムボタンを押します。点線の範囲が正しければエンターキーを押します。(範囲が正しくなければ正しい範囲をドラッグします)
これで加算ができます。

投稿日時 - 2009-07-13 20:07:28

あなたにオススメの質問