• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelや、ややこしい関数について教えて下さい。)

Excelや関数について教えてください

このQ&Aのポイント
  • Excelや関数について教えてください。
  • 製造日から賞味期限までの期間の3分の1の時点や3分の2の時点、2分の1の時点を割り出す関数を教えてください。
  • ExcelのA列に製造年月日の日にちを入力し、B列に賞味期限の日数を入力すると、C列には1/3の日にちが表示され、D列には1/2の日にちが表示されるような表を作りたいです。

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

  • ベストアンサー
回答No.6

B列は 「月数」を入力する C2セル 賞味期限 =DATE(YEAR(A2),MONTH(A2)+B2,DAY(A2)) D2セル 3分の1 比例計算 y=ax+b を思い浮かべる ただし、時間は切り捨て。 =INT(($C2-$A2)/3)+$A2 E2セルもD2セルと同様 =INT(($C2-$A2)/2)+$A2 E2セルもD2セルと同様 =INT(($C2-$A2)*2/3)+$A2

casper4723
質問者

お礼

ありがとうございます!!エクセル表を張り付けてくださって、とても分かりやすくて、助かりました。 本当にありがとうございました。

その他の回答 (5)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.5

既出の回答の式では A1に2011/2/12、 B1に2とすると、 C1は2011/2/12(式=IF($A1="","",DATE(YEAR($A1),MONTH($A1)+$B1/3,DAY($A1))) )   となるが D1に=IF($A1="","",DATE(YEAR($A1),MONTH($A1)+$B1,DAY($A1))))で2ヵ月後の日付を出し =A1+(D1-A1)/3 で期間日数の1/3を経線なして計算して足す で=A1+(D1-A1)/3で 2011/3/3 が良いのでは。つきを3などで割った値が整数化かされるのでは。 両者を一体化して1つの式に出来る。 =IF($A1="","",$A1+(DATE(YEAR($A1),MONTH($A1)+$B1,DAY($A1))-$A1)/3) 1/2の場合は/3を/2にする。 なお、Xヵ月後の賞味期限とは、X月後の応答月の当該の日が期限と理解する(慣行?法定?)。 B1はつき表示で入力されていること(1年ー>12月、2年ー>24月) EDATEを使う方が良いかと思うが、バージョンによっては、アドイン関数なので注意必要。

casper4723
質問者

お礼

ありがとうございます。バージョン情報もありがとうございました。

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

こんにちは! 一例です。 下の画像でB2セルに =A2+(EDATE(A2,D2)-A2)*B1 という数式を入れています。 尚、EDATE関数を使用するにあたって、当方使用のExcel2003以前のバージョンでは メニュー → ツール → アドイン → 「分析ツール」にチェックを入れておく必要があります。 参考になれば良いのですが・・・m(__)m

casper4723
質問者

お礼

エクセル表の貼り付けありがとうございます。今日何時間もやって、へんてこなものしかできずに困っていました。助かりました。バージョンの確認とチェックの仕方も詳しく教えて下さってありがとうございました。

  • BuonGiorn
  • ベストアンサー率32% (8/25)
回答No.3

そのような関数はまだ無いようです。 製造日からEDATE(製造日日,月数)で賞味期限を算出します。 賞味期限日から製造日を引きます。(日付のままでok) 引いた値を1/3したものを、仮に賞味1/3と呼びます。 C列には、DATEVALUE(製造日)+賞味1/3。 D列には、1/2した値で計算します。 F1:EDATE(A1,B1) G1:(F1-A1)/3 C1:DATEVALUE(A1)+G1 F1,G1はC1にまとめることも出来ます。 1日以下の端数が問題ならROUND,ROUNDUP,ROUNDDOWNなどで 調整できます。

casper4723
質問者

お礼

ありがとうございました。ROUNDも教えて下さって、ありがとうございます。

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

A1=製造日 B1=賞味期限(月数) C1=DATE(YEAR(A1),MONTH(A1)+B1/3,DAY(A1)) D1=DATE(YEAR(A1),MONTH(A1)+B1/2,DAY(A1)) E1=DATE(YEAR(A1),MONTH(A1)+B1*2/3,DAY(A1))

casper4723
質問者

お礼

ありがとうございました。助かりました。

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

C1セルには次の式を入力して下方にオートフィルドラッグします。 =IF($A1="","",DATE(YEAR($A1),MONTH($A1)+$B1/2,DAY($A1))) D1セルには次の式を入力して下方にオートフィルドラッグします。 =IF($A1="","",DATE(YEAR($A1),MONTH($A1)+$B1/3,DAY($A1)))

関連するQ&A

専門家に質問してみよう