• ベストアンサー

エクセル 時間計算(○○時間○○分)

初歩的ですみません。 すでに、○○時間○○分といった形で入力してしまいました。 合計を出したいのですが、文字列と認識してしまうためか?合計が出せません。 方法を教えてください。 また、今後10時間10分と入力せず、1010と入力すれば、表示は10時間10分と自動的に表示され、合計も出せる方法を教え下さい。 宜しくお願いいたします。

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

  • ベストアンサー
  • anaguma99
  • ベストアンサー率59% (1620/2727)
回答No.1

"分"を置換で消去する(置換後の文字列を空欄にする)。 "時間"を置換で":"にする。 これで時刻に変換されます。 そのままで合計を出すと 時刻計算になってしまって 24時間以上は0に戻るので、 「書式」→「セル」→「表示形式」で [hh]:mm とします。 こうすると24時間以上の表示も可能になります。 また、表示形式で、 [hh]"時間"mm"分" とすれば、○○時間○○分と表示されます。 後者の質問は、にわかに思いつきません。 文字列にすれば別セル上で可能ですが、 その後数値に戻すのが…… 素直に10:10と入力してはいけませんか。

noname#8679
質問者

お礼

大変わかりやすく、助かりました。 本当にありがとうございました。

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

その他の回答 (1)

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.2

ユーザー定義関数での解です。 <手順> 1. [Alt]+[F11]キー押下で、Visual Basic Editor が起動します。 2. メニューから[挿入]-[標準モジュール]をクリック 3. 開いたウィンドウに次のコードをコピー&ペースト 4. Visual Basic Editor を終了 Function ConvTime(Param As Variant) as Variant   '“時間”や“分”カット   If InStr(Param, "時間") > 0 Then Param = Replace(Param, "時間", "")   If InStr(Param, "分") > 0 Then Param = Replace(Param, "分", "")   ConvTime = Param   If IsNumeric(Param) Then     Select Case Len(Param)       Case Is = 3:ConvTime = TimeSerial(Left(Param, 1), Right(Param, 2), 0)       Case Is = 4:ConvTime = TimeSerial(Left(Param, 2), Right(Param, 2), 0)     End Select     Exit Function   End If End Function 以上で、普通のワークシート関数のように、ConvTime関数が使用可能になります。例えば、A1セルに 8時間30分 のように入力されているとしたら、B1セルなど適当な作業用空セルに次の式を書き込みます。 =ConvTime(A1) これで文字列から“時間”や“分”がカットされ、時刻に変換された値が得られます。後はフィルで必要な行までコピーして下さい。最後にB1セルの結果をA1セルに値でペーストし、作業用セルを削除します。また、○時間×分という書式が希望であれば、ユーザー定義の書式を設定すれば良いでしょう。 >...1010と入力すれば、表示は10時間10分と自動的に表示され、合計も出せる方法... これは、Worksheet_Changeイベントに上記の関数を呼び出すコードを記述することで可能ですが、お勧めできません。ある程度VBAの知識が必要となります。

noname#8679
質問者

お礼

んー私にはちょっと高度のようです(T_T) でもいろいろな方法で覚えたいので、助かりました。 ありがとうございました。

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

関連するQ&A

  • EXCELでの時間計算について

    私の会社には、1ヶ月の残業時間を入力し印刷して提出する為のEXCELデータがあります。 自分で日毎に残業時間を入力して、その合計を電卓で計算して入力するようなものです。 残業した日が多い時は、いちいち合計を計算するのが面倒なので、なにか良い計算式は無いでしょうか。 今入力している方法は、A列に時間、B列に分(10分単位の入力)という感じで1ヶ月分を入力しています。 A列の「時間」は単純に足していけばよいのでしょうが、B列は「分」なので例えば合計して510分となったとき、 それを8時間30分にして、その8時間をA列のほうに足すというような計算式を教えて頂けませんでしょうか。 あと、日毎の残業時間は10分単位で入力するのですが、その月の合計は30分単位にして提出しなければなりません。 例えば、合計が30時間40分~50分の場合は30時間30分にしなければなりませんし、 30時間10分~20分の場合は30時間00分にしなければなりません。 この両方の内容を兼ね備えた計算ができる方法を教えて頂きたく存じます。 分かりにくい文章で、申し訳ありませんがよろしくお願い致します。

  • エクセル2003 2時間15分20.11秒をシリアル値にして2時間15分20.11秒と表示する方法

    エクセル2003です TIMEを合計するため 2時間15分20.11秒と入力したセル(文字列)をシリアル値に変えて2時間15分20.11秒と表示したいのです。 よろしく御願いします。

  • エクセルで、24時間を超える時間を分表示にするには?

    既出質問と重複していたら申し訳ありません。 近い質問はありましたが、どうしても解決できませんでした。 エクセルのセル内に、「80時間35分」などと表示されている文字列(作業時間)を 合計計算しやすく分表示にするため こちらの相談箱からヒントを得て 1) 「時間」を「:」に、「分」を「(空欄)」として置換 2) 「TIMEVALUE」関数を使用 3) 書式設定で「ユーザー定義」を選択し、[m]"分"を指定して分表示 というところまで設定しましたが、24時間を超えるものは1日単位で計上されているようで、正しい合計時間が表示できません。 上記の80時間35分は、515分となります。 80時間-72時間(3日)+35分=515分、となっていると思われます。 [h]などを設定してもうまく反応しないのですが、よい方法はないでしょうか。 よろしくお願いします。

  • エクセル 残業時間計算・表示

    日々の残業時間を、A列に時間、B列に10分単位で入力しています。 月末には、B列の合計を30分単位で丸めます。 例)  A B  1  1 20  ・  2 30  ・  1 50 30  0 40 合計  6 00 分を集計すると2時間20分になります。 合計行の分の表記は30分単位で丸めたいので、 30分未満は00、30分以上は30と表記したいのですが、 どのように、計算(関数)処理すれば出来るのでしょうか。 毎月のことなので、自動計算出来れば助かるのですが。

  • Excelで時間計算

    こんにちは。 簡単な質問ですいません。 下記どなたかご存知の方教えて下さい。 したいことは下記の通りです。 A列に「開始時間」、B列に「終了時間」を入力します 。 そうすると、自動でC列には「時間数(終了時間-開始時間)(分)」を表示させたいのです。 A例 B列 C列 10:00 11:20 80 宜しくお願いします。

  • エクセルで時間計算

    いつもお世話になっています。 エクセル関数で、またつまづいてしまいました。。 D1に実働時間合計表示。←ここまで関数入力出来てます。 E1にD1で計算された結果が、9時間を越えた場合の時間の合計を自動的に表示させたい。 『9時間を1分越えると15分刻みにしてるので、D1には 9:15となるように関数をいれてます。』 D1 8:00 E1  0 D1 9:00 E1  0 D1 9:15 E1  0:15  D1 9:30 E1  0:30 このように表示させるには、E1に関数をどのように 入力するればよろしいでしょうか。

  • エクセルで時間の計算方法を教えてください

    給与ソフトからエクセルにおとしましした エクセルの Sheet1には8月分 Sheet2には7月分 Sheet3にSheet1とSheet2の合計をだしたいのです 下記のように表示され計算できません どのようにすればいいのか教えてください 例えば 給与ソフトには64:00と明記されています それをエクセルにコピーすると 6400となりました 6400をセルの設定の時間に変更すると16:00:00となってしまったので 横の列に手入力で64:00とかえました すると 64:00:00 上部の数式を計算する部分には 1900/1/2 16:00:00 と表示されています (「:」の記号はキーボードの「け」の部分を使用) A列に個人コード B列に氏名 C列に出勤日数 D列に出勤時間 E列に手入力で出勤時間の打ち直し分 このような感じです 給与ソフトに戻すとエラー表示されます 64:00のみだで秒数を表さなければ大丈夫との事なんですが・・・ 64:00のみの表示をする方法 6400を簡単に64:00にする方法はありますか? また こういう行程ですれば早いという方法があれば教えてください

  • Excelの時間の計算

    時間の計算の算出方法について質問です。 セルE16に 2015/11/25  17:59 という日付けと時間が入力されています。 セルH16に同じような形式で日付けと時間が入力された場合 セルK16に経過時間を表示する方法を教えて下さい。 ちなみにK16の経過時間は30分以上いくことは絶対にないので 分表示のみで大丈夫です(○○min と表示したい) またE16、H16ともに、マクロにて、セルの所でダブルクリックすると日付けと時間が 入るようになっています。 理想としてはH16の所でダブルクリックしたときにH16に日付けと時間が入力され K16に経過時間を表示という形にしたいです。 このような計算をした箇所が20行あります。 列は変わりません。 16から35行まで。 ご指導の程、宜しくお願いします。

  • EXCELで時間(○分○秒)の計算

    EXCEL97を使ってます。 (1)例えば6分3秒を06:03と表示した表があります。 これをEXCELで6分3秒と認識させるには どうしたらいいでしょうか。そのまま06:03では ダメですよね? (2)(1)の○分○秒という数値が200ほどあるのですが、 それを全部足して合計何時間何分何秒か出すには どうしたらいいでしょうか。 できるだけ簡単なやり方を教えていただけると ありがたいです。 よろしくお願いします。

  • Excelでの時間計算について

    A列に時間、B列に分、C列に秒を入力し、その時間差を計算して、Dに表したいと思います。 例 A1に10(時)、B1に10(分)、C1に10(秒)を入力し、A210(時)、B2に20(分)C2に5(秒)を入力した場合、Dに9分55秒 このように表示させるにはどうしたらいいでしょうか。 よろしくお願いします。

専門家に質問してみよう