• ベストアンサー

366日を1年/0ヶ月/1日にする方法

Excelの関数を使って、A1セル「366」から、B1「1(年)」C1「0(ヶ月)」D1「1(日)」に分ける方法ありますか? 表示書式は年や日はいりません。数値だけが返ってくればいいです。 どなたかご存知でしたら教えて下さい。単純かもしれませんが急いでいてパニクっているため思いつきません~(T_T)助けてください。

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

  • ベストアンサー
  • wolv
  • ベストアンサー率37% (376/1001)
回答No.4

アドバイス: 月によって、ひと月の日数が違うので、 単純にはできません。つまり、どうやってもなんかしら問題がでます。 ------------------------------------------------------------ 回答: 例えば、year,month,day(それぞれ、1900年1月1日を”1”とした日付連番を引数として、年、月、日を返す関数)を使うなら、 「=YEAR(F13+1)-1900」 「=MONTH(F13+1)-1」 「=DAY(F13+1)-1」 となります。ただし、この場合は、1900年がうるう年なので、1年は366日であり、A1が366の場合は0(年)11(ヶ月)30(日)となります。

buuuuuuun
質問者

お礼

そうですね。閏年の問題があったことを考えると、ちょっと無理な話だったと反省しているところです。 勤続期間から休職期間を除いて純勤続期間を出そうとしていてこのような質問をさせていただいたのですが、ちょっと別の面から算出方法を考えていこうかと思っているところです。 回答ありがとうございました。

その他の回答 (4)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.5

こんにちは。maruru01です。 通常の年とうるう年で異なります。 通常の年 B1 =INT(A1/365) C1 =MONTH(MOD(A1,365)+36161)-1 D1 =DAY(MOD(A1,365)+36161)-1 うるう年 B1 =INT(A2/366) C1 =MONTH(MOD(A2,366)+1)-1 D1 =DAY(MOD(A2,366)+1)-1 でいけると思います。 では。

buuuuuuun
質問者

お礼

#4の方のお礼に書いたように、ちょっと別の切り口で算出しようかと思っています。回答いただいたのに、ごめんなさい。 どうもありがとうございました。

  • comv
  • ベストアンサー率52% (322/612)
回答No.3

こんにちは 起算する年によって答えが変わってきますが ご希望の場合、閏年以外の年の経過年月日とされて いるようなので(閏年なら1年0ヶ月0日) セルB1に  =DATEDIF("2002/1/1","2002/1/1"+A1,"y") セルC1に  =DATEDIF("2002/1/1","2002/1/1"+A1,"ym") セルD1に  =DATEDIF("2002/1/1","2002/1/1"+A1,"md") で如何でしょうか

buuuuuuun
質問者

お礼

回答ありがとうございました。

  • yama_x
  • ベストアンサー率20% (188/940)
回答No.2

日付間数を使わずに・・・ B1;=ROUNDDOWN(A1/365,0) C1;=ROUNDDOWN((A1-365*B1)/30,0) D1;=A1-B1*365-C1*30 というのはどうでしょう? *1年は365日、1ヶ月は30日で計算しています。

buuuuuuun
質問者

お礼

回答ありがとうございました。

回答No.1

B1からD1までA1の値を貼り付けて、B1のセルの書式設定の表示形式でユーザー定義を選択し、YYYY/MM/DDを選択します。 種類のボックスのところで、B1は、YYYY以外を削除、C1はMM、D1はDDとすれば、それぞれに年月日が表示されると思います。

buuuuuuun
質問者

お礼

回答ありがとうございました。

関連するQ&A

専門家に質問してみよう