• 締切済み

Excelで経過秒数から年:月:日:秒を算出するには

Excelで経過秒数からX年Xヶ月X日X秒を算出するにはどのような計算式となりますでしょうか

みんなの回答

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.6

例えばA1セルに2010/1/22 12:00:00と入力してセルの表示形式のユーザー定義で yyyy/m/d h:m:ss とでもすればスタートの時間を表示させることができますね。 次にA2セルから下方のセルには経過秒数を10000のように入力します。 B列には経過後の年、月、日、時、分、秒を表示させるとしてB2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A2="","",TEXT(A$1+A2/86400,"yyyy年mmヶ月dd日hh時間ss秒"))

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.5

A1に経過秒を入力して 結果=TEXT(YEAR(A1/24/60/60)-1900,"00年")&TEXT(MONTH(A1/24/60/60)-1,"00ヶ月")&TEXT(A1/24/60/60,"dd日")&TEXT(MOD(A1/24/60/60,1),"[S]秒") 最大値は経過255611462399秒で8099年11ヶ月31日86399秒

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

No.2・3です! 本当に何度もごめんなさい。 お詫びのしるしと言っては失礼ですが、 ↓の画像のような感じにすれば良いのですかね? A2セルを基準にB2セル秒後の日時をC2セルに表示させています。 C2セルは単純に =A2+(B2/60/60/24) として、セルの書式設定の表示形式からユーザー定義で yyyy年m月d日h時m分s秒 としています。 これでもかっ!と言うくらい顔を出してしまいました。 これも的外れならごめんなさいね。m(__)m

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

No.2です! たびたびごめんなさい。 前回の投稿は大きな勘違いをしていました。 >経過秒数からX年Xヶ月X日X秒を算出するには・・・ とあるので参考にはならないと思います。 無視してください。 何度も失礼しました。m(__)m

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

こんばんは! 参考になるかどうか判りませんが・・・ ↓の画像でA2・B2セルの表示形式はユーザー定義から yyyy/m/d h:mm:ss としています。 そして、C2セルに =DATEDIF(A2,B2,"y")&"年"&DATEDIF(A2,B2,"ym")&"ヶ月"&DATEDIF(A2,B2,"md")&"日"&TEXT(MOD(B2-A2,1),"[h]時間mm分ss秒") という数式を入れています。(エラー処理はしていません) 検証はしていませんが、何とか希望に近い形にならないでしょうか? 以上、参考になれば幸いですが、 他に良い方法があれば読み流してくださいね。m(__)m

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

1月~12月までのそれぞれの月の日数の違い、うるう年、あるいはうるう秒なんかをどう処理するか、しっかり決めないと、式が立てられないです。 1日=24時間=24×60分=24×60×60秒=21600秒ですので、 A年Bヶ月C日D秒 のD秒の部分は、経過秒数を21600で除算した余りとか。 A1に経過秒数が入ってるのなら、 =MOD(A1, 21600) とかで計算されます。 A年Bヶ月C日 の部分については、簡単な計算?変換方法としては、Excelの日付取り扱いの機能を使うのが楽です。 A1に経過秒数が入ってるのなら、 =TEXT(INT(A1/21600), "yy年mmヶ月dd日") とか。 #確か、1900年または1904年のカレンダーでの計算になるハズ。 総合すると、上記の2つの文字列式を連結して、 =TEXT(INT(A1/21600), "yy年mmヶ月dd日")&MOD(A1, 21600)&"秒" とか。