当サイトはWordとExcelの実力を鍛える最高水準の特訓問題集です。リンクを張るのは自由です。ExcelExcelで時刻の足し算引き算がうまくいかないことがあります。計算することはできるのですが、その方法を知らない人は多いと思います。練習する問題集もなければ、テキストにもそんなに詳しく載っていないので知らない人が多いのも当然です。時刻の計算の練習をするなら、関数よりもまず足し算と引き算を練習することをおすすめします。そこで、今回は、時刻の足し算引き算、時間の合計が24時間以上になった場合の処理、0時より前の時刻の扱いについて出題します。目次1.時刻のシリアル値(復習)2.1日と1時間3.時刻の足し算(1)時刻の文字列に1を掛ける(2)時間を足す(3)24時を超える場合(4)値の貼り付け(5)時間の合計が24時間以上になる場合4.24時間を超えた判定5.時刻の引き算(1)時間を引く(2)秒が表示されないことがある(3)マイナスは#####になる6.0時より前になっても正しく表示する7.マイナスになったら24時間を足す8.マイナスを表示するには関数が必要1.時刻のシリアル値(復習)Excelで時刻の計算をするにはまず時刻のシリアル値について理解する必要があります。詳しくはこちらの記事をご覧ください。12:34」と入力して次の計算をしなさい。(1)1日を足しなさい。(2)1時間を足しなさい。12:34」と入力します。1日=24時間のシリアル値は1なので1日増えます。1を引くと1日減ります。今度は「"1:00"」を足します。ダブルクォーテーションで囲んで時刻の形式で足します。「"1:00"」を引くと1時間減ります。「="2:30"」と入力したときの計算結果は時刻(シリアル値)と言えるか。シリアル値にして、時刻の表示形式にしなさい。「="2:30"」と入力すると左揃えになります。ダブルクォーテーションで囲んだものは文字列であって時刻でもシリアル値でもありません。セルに小数のシリアル値が保存されるわけではありません。時刻の形をした文字列を時刻(シリアル値)にするためには、足し算・引き算・掛け算・割り算の四則演算が必要です。簡単な方法は1を掛けることです。これは2時間半のシリアル値です。時刻の表示形式にすると2分30秒になります。(2)時間を足す問題2時間半と4時間40分を足しなさい。「2:30」「4:40」と入力します。これは2時間半と4時間40分を足したと考えてもいいですし、2時30分から4時間40分経過した時刻と考えてもかまいません。6時間70分ではなく「7:10」となりました。ここで表示形式を標準にしてシリアル値を表示します。Excelは時間を小数のシリアル値で管理しています。2:30と4:40を小数にして、0.104と0.194を足した結果0.298にあたる時刻を表示しています。別解ダブルクォーテーションで囲んだ時刻文字列で足し算をするとそれぞれシリアル値になります。="2:30"+"4:40"時刻の表示形式にすると7:10となります。問題23時に就寝して、6時間半後に起きる場合の起床時間を求めなさい。「23:00」「6:30」と入力します。23時の6時間半後は5時半です。ここで表示形式を標準にしてシリアル値を表示します。答えが1を超えています。23時間+6時間半=1日と5時間30分です。1以上の小数の場合、整数部分が日数を表し、小数点より右側の小数部分が、24時間未満の時間を表します。時刻同士の足し算をすると時刻の表示となり、日数は非表示となるため「1日」の部分は表示されません。表示されていないだけで計算結果には1日(24時間)が含まれています。(4)値の貼り付け問題2分半と3分半を加算しなさい。計算結果をコピーして、別のセルに値だけ貼り付けなさい。「0:2:30」「0:3:30」と入力します。これで2分半と3分半になります。これらを足すと6分になります。値の貼り付けをすると小数になります。これは6分のシリアル値です。ちなみに、6分のシリアル値(=1/240)は割り切れないので無限に続く小数になります。時刻の表示形式にします。問題1時間1分~12時間12分をすべて足しなさい。「d日h時間m分」の形式にしなさい。解説1:01~12:12を入力します。時刻の表示になっていますが、小数と同じなのでオートSUMボタンの合計が使えます。合計すると7:18になりますが、24時間以上の部分が隠れていることは明らかです。24時間以上の時間を表示するには表示形式を[h]:mmとします。表示形式を「d日h時間m分」にすると日数と時間と分が表示できます。問題A列とB列の時間を足して30時間を超えていればTRUE、30時間以下であればFALSEと表示しなさい。解説A列とB列を足します。24時間が隠れていることは明らかです。「30:00」と比較をすれば30時間を超えているかどうかが分かります。ダブルクォーテーションで囲んで1を掛けます。表示形式を[h]:mmとします。30時間の時はFALSE、30時間を超えたらTRUEになります。移動に80分かかることが分かっている場合、午前7時までに到着するには何時何分に出発すればよいか。解説80分ということは1時間20分です。これを7時から引きます。両方とも小数のシリアル値なので引き算をすることができます。(2)秒が表示されないことがある問題2時間から5秒を引きなさい。「2:0」「0:0:5」と入力します。引き算をすると1時間59分になります。秒が非表示になっています。非表示にはなりますが四捨五入になるわけではありません。表示形式を「h:mm:ss」の形式にします。1時間59分55秒となります。別解ダブルクォーテーションで囲んで計算することもできます。="2:0"-"0:0:5"表示形式を「h:mm:ss」の形式にします。「7:00」から「9:00」を引くことは可能か。「7:0」「9:0」と入力します。7時から9時を引きます。マイナス2時間になるはずですが、#####の表示になります(後述)。シリアル値はもともと1900年1月1日からの経過日数であり、マイナスは想定していません。マイナスのシリアル値は存在しないので、日付や時刻の表示形式にすることはできません。日付や時刻の「表示形式にならない」だけなので、標準にすればマイナスの小数が表示されます。正確に言えば、セルに保存されている値がマイナスの場合、表示形式の日付や時刻(年yyyy、月m、日d、時h、分m、秒sなど)が使えません。小数の引き算は可能ですが、日付や時刻としての結果が表示できません(後述)。午前7:00の9時間前を計算して、22:00と表示するにはどうすればよいか。午前7時の9時間前を計算するには7:00から9:00を引かなければなりませんが、マイナスになってしまい表示できません。22:00にはなりません。そこで、24時間を加算して31:00と入力します。7:00と表示されていますが、セルに保存されているのは「1日+7時間」です。引き算すると、22:00になります。表示形式を[h]:mmにします。31時から9時を引いて22時になります。別解その1どうしても「7:00」のままで答えを22:00にしたい場合は、計算式で1を足します。1というのは24時間のことです。24時間を加算することによって22:00となります。別解その27時から9時間を引くときは24時間を加算して22時としますが、逆に、9時から7時間を引くと2時です。24時間は加算しません。大きい時刻(9時)-小さい時刻(7時)つまり、答えがマイナスになる時だけ1を加算すればよいです。そこで、引き算をする数を比較して、最初の数が小さい時に1を加算します。(最初の時刻A)-(引く時間B)+(A<B)7.マイナスになったら24時間を足す問題B列からA列を引きなさい。B列のシリアル値がA列より小さい場合は1をたしなさい。開始時刻と終了時刻があって、その間の時間を求めるときには、終了時刻から開始時刻を引けばよいです。引き算をすると######になっているものがあります。開始時刻より終了時刻のほうが前(シリアル値が小さい)ものがあり、引き算をするとマイナスになります。マイナスになっていないものは、もともと24時間以上の時刻が入っているものと考えられます。そこで、さきほどの設問と同じように、終了時刻のほうが小さい場合には1を足します。(終了時刻)-(開始時刻)+(終了時刻<開始時刻)これで、完成です。24時間以上の時刻を入力する可能性がある場合は、あらかじめ[h]:mmの設定を入れておいたほうが分かりやすいです。8.マイナスを表示するには関数が必要B列からA列を引いたときにマイナスになる場合に、マイナスを表示するには絶対値を求めたうえで、マイナスを付けた表示形式にします。TEXT関数とABS関数が必要です。【Excel】TEXT関数で数値を文字列に変換するときの注意点と練習問題https://www.waenavi.com/entry/20191029/1572352019解説は以上です。わえなびチャンネルhttp://www.youtube.com/c/waenavijpチャンネル登録をすると最新の動画をチェックできます。初心者向けの動画も大量にあります。平成三十年八月]スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。