分秒同士の加減算
FCPやDVDStudioProでの映像管理用シートを作りたいのですが、10進数と60進数の変換が分からず行き詰まってます。セルに入力した分秒同士の加減算をさせるにはどうしたらよいでしょうか。
例えば 5分20秒(5:20)-3分30秒(3:30)=1分50秒(1:50)
とか 1分48秒(1:48)+2分26秒(2:26)=4分14秒(4:14)
良い方法をご存知の方、お教えください。
FCPやDVDStudioProでの映像管理用シートを作りたいのですが、10進数と60進数の変換が分からず行き詰まってます。セルに入力した分秒同士の加減算をさせるにはどうしたらよいでしょうか。
例えば 5分20秒(5:20)-3分30秒(3:30)=1分50秒(1:50)
とか 1分48秒(1:48)+2分26秒(2:26)=4分14秒(4:14)
良い方法をご存知の方、お教えください。
> 良い方法をご存知の方、お教えください。
ないんですよねぇ(^^;;;
前にも話題になったんですが、現Numbersの「日付と時刻関数」の中ではどんぴしゃりの関数がなく、且つ、単に分、秒だと思って入れも計算できません。日付が無い分: 秒の計算が難しいんです。
どうしてもやろうとすると、あるセルに5分20秒と入れて計算に使いたい場合はセルのフォーマットを「日付と時刻」にし、日付を「なし」にし、時間を「00:00:00」の形式つまり「5:20」と入れるんではなくて「0:05:20」と入力する必要がまず、あります。そうすれば「日付と時刻関数」の中からMINUTEで分を取り出して秒に直し、SECONDで秒を取り出して足して、なんとか計算できますが、また分と秒に分ける、のような事をしなくてはならないようです。
例)
A1に0:05:20、B1に0:03:30と入れた場合、C1に減算結果の分部分をD1に減算結果の秒部分を入れるとして例えば下記の通り
【C1】
=INT((((MINUTE(A1)*60)+SECOND(A1))-((MINUTE(B1)*60)+SECOND(B1)))/60)
【D1】
=MOD((((MINUTE(A1)*60)+SECOND(A1))-((MINUTE(B1)*60)+SECOND(B1))),60)
最初の入力が面倒且つ、計算式も無駄に長いし訳わかんなくなりそーだし。
って事でもっとアナログに考えて最初からセルを分と「:」と秒に分けてあげれば(見栄えはどうにでも出来ますしね)って事で、例えば下記は如何でしょう。
A1には分、B1には「:」、C1には秒、D1は分、E1には「:」、F1には秒、G1にはドロップダウンでも手入力でも良いので「-(減算するのか)」「+(加算するのか)」を、H1には計算結果の分、I1には「:」、J1には計算結果の秒としてH1,J1はそれぞれ下記のとおり
【H1】
=IF(G1="-",INT(((A1*60+C1)-(D1*60+F1))/60),INT(((A1*60+C1)+(D1*60+F1))/60))
【J1】
=IF(G1="-",MOD(((A1*60+C1)-(D1*60+F1)),60),MOD(((A1*60+C1)+(D1*60+F1)),60))
これなら1つのセルでやらなくちゃいけないという拘りさえ捨てれば見てくれもさして悪くないですし、入力も楽ですし、実用範囲かなと。。。だめ? (^^;
>10進数と60進数の変換
当方では別の目的で(GISでの経度緯度計算),少し面倒ですがExcelで変換します。
1 A分B秒のA値とB値を別のセルに分ける(分をコンマに置換,秒を消去>CSVで書き出し>コンマ区切りで再読み込み。普通は別々に手入力)
2 Excelの計算式で10進数値を求める。=A+B/60
3 10進度数で加減する。
4 10進数を60進数に変換する。1.878分=1分(0.878×60)秒
追伸
A時間B分C秒は,10進数で,
=A+B/60+C/3600(時間)
おっと。ここはNumbersでしたね。失礼しました。
usadii3 さん、ありがとうございました。
>前にも話題になったんですが、現Numbersの「日付と時刻関数」の中ではどんぴしゃり
>の関数がなく、且つ、単に分、秒だと思って入れも計算できません。日付が無い分: 秒の
>計算が難しいんです。
過去トピックスも探したのですが、見つけられませんでした。
例に挙げていただいた方法1は
確かに入力が面倒でした。それと未入力の行の計算結果のセル左上に、クリックすると「この数式は日付の代わりに数字を使用しています」という青い三角マークが出るのがちょっと煩わしいのが玉にきずでした。
方法2は「:」列が必須なのか、それだと入力がやはりちょっと面倒だと思ったのですが、「:」列は見栄えのためにあるので削除しても構わないのですね。
>これなら1つのセルでやらなくちゃいけないという拘りさえ捨てれば見てくれもさして
>悪くないですし、入力も楽ですし、実用範囲かなと。。。だめ? (^^;
いやあ、いい仕事しています。 (^^;;;
実は左右方向は全て引き算で、その結果出た数値を上下方向で全て足し算する表だという説明をしていなかったので、IF関数が入った長い数式になってしまい、すいませんでした。
そのダイエットと縦方向の足し算については教えていただいた数式を参考に試行錯誤してみます。
追記。できました。同じような表を作りたい人の参考のため数式を書いておきます。
行方向入力はA1に分、B1に秒、C1に分、D1に秒 計算結果はE1に分、F1に秒とすると
E1は =INT(((A1*60+B1)-(C1*60+D1))/60)
F1は =MOD(((A1*60+B1)-(C1*60+D1)),60)
で、E1とF1の列方向のx列までの足し算は
=SUM(E1:Ex)+INT((SUM(F1:Fx)/60))
=MOD((SUM(F1:Fx)),60)
以上で表の骨格ができましたので、あとは見栄えを楽しんでみます。
> 過去トピックスも探したのですが、見つけられませんでした。
一応示しておくと下記です。
"時間の計算", 2007/08/22 12:23am
> 方法2は「:」列が必須なのか、それだと入力がやはりちょっと面倒だと思ったのですが、「:」列は見栄えのためにあるので削除しても構わないのですね。
あ、そですそです。単に見栄えの為だけのものなので、なくても全然構いません。
> 実は左右方向は全て引き算で、その結果出た数値を上下方向で全て足し算する表だという説明をしていなかったので、IF関数が入った長い数式になってしまい、すいませんでした。
あ、そだったんですねー。入力時に加算するのか減算するのかを加味したほうが良いのかなと余計な式にしちゃいましたね。すみません。
でも、なんとか出来たようで、よかったですね♪ NumbersはいろいろExcelとくらべれば出来ないことが多くて、アレなんですが、私などは逆にExcel漬けになった頭をリフレッシュ出来るので好んで使ってます。
分秒同士の加減算