[[20220723110036]] 『月齢で15捨16入の方法を知りたい』(みょん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『月齢で15捨16入の方法を知りたい』(みょん)

例えば、

今日  2022/7/23
誕生日 2016/2/3

この月齢は
=datedif(誕生日のセル,今日のセル,"M")で

77という値がでます。

私がやりたいのは、
詳しく計算をすると77ヶ月と20日なので、15捨16入をして
78ヶ月という最後の一手間がほしいのです。

なにかいい方法はありませんか?

< 使用 Excel:Office365、使用 OS:MacOSX >


 =datedif(誕生日のセル,今日のセル-15,"M")
 とか?
(´・ω・`) 2022/07/23(土) 11:21

=DATEDIF(A1,B1,"M")+IF(DATEDIF(A1,B1,"MD")>=16,1,0)
とか。
(γ) 2022/07/23(土) 11:33

ありがとうございます。

(´・ω・`)さん、うまくいきません。

(γ)さん、#NAME?と表示されてしまいます。
一番最後のところの
1,0,)
の意味はなんでしょう?
(みょん) 2022/07/23(土) 11:38


 私の式はだめですね。DateDifの仕様を間違えて覚えていたようです
 すみません

(´・ω・`) 2022/07/23(土) 11:45


 期間の考え方は、人により、会社により、法律により、MicroSoftの関数の仕様により、若干異なります。

 >詳しく計算をすると77ヶ月と20日なので
 とのことなので、みょんさんの考え方は、ある程度推測はできますが、
 念の為、以下の場合何カ月になればいいのか確認したい。

 今日  2022/7/16
 誕生日 2022/3/31

(半平太) 2022/07/23(土) 12:25


(半平太)さん

この場合、3です。
(みょん) 2022/07/23(土) 12:36


 3ですか・・・、確認してよかった。

 私には理解不能な考え方なので、降ります。 m(__)m

(半平太) 2022/07/23(土) 12:52


自信がありませんが、こんなことでしょうか?

A1: 今日
A2: 誕生日 として。

=DATEDIF(A2,A1,"m")+INT(DATEDIF(A2,A1,"MD")/16)
(メジロ) 2022/07/23(土) 13:22


(半平太)さん

今日  2022/7/16
誕生日 2022/3/31
ーーーーーーーーーー
      0/3/15

30日を基本と考えて、今日から誕生日の引き算をします。
すると、
0年3ヶ月15日となります。
15捨16入の考え方だと、15以下は切り捨てるので
3ヶ月だけ残るという考え方です。
(みょん) 2022/07/23(土) 13:32


(メジロ)さん

ありがとうございます。
私が求めている答えになりました。

後半のINTの部分について解説していただきたいのですが、
INT関数を柄することで何が起こっているのでしょうか?
(みょん) 2022/07/23(土) 13:41


(メジロ)さん
ありがとうございます。
私が求めている答えになりました。

後半のINTの部分について解説していただきたいのですが、
INT関数を加えることで何が起こっているのでしょうか?

INTは小数の切り捨てなどに使われるものだと思っていました。
一番最後の【/16】はどのような意味ですか?
(みょん) 2022/07/23(土) 13:45


γさんのでもでましたけど。

ただ、γさんは、A1,B1が基準なだけです。
このように修正するだけでした。

=DATEDIF(A2,A1,"M")+IF(DATEDIF(A2,A1,"MD")>=16,1,0)
(カビ) 2022/07/23(土) 13:52


(カビ)さん

ありがとうございます。
改めて試したところ、できましたね!
(みょん) 2022/07/23(土) 13:58


 >一番最後の【/16】はどのような意味ですか?

16で割った結果が0か1かの違いでは?
intで、端数消してます。
(カビ) 2022/07/23(土) 14:07


 >30日を基本と考えて、
 めずらしい考え方ですね。

 すると、以下の計算でいいですか?
 (1)
 今日  2022/4/13
 誕生日 2022/2/28
 ーーーーーーーーーー
       0/1/15 →15捨16入で「1カ月」

 (2)
 今日  2022/4/14
 誕生日 2022/2/28
 ーーーーーーーーーー
       0/1/16 →15捨16入で「2カ月」

 因みに、出来たとか言う数式は、上記(1) は2カ月と出ますけど、大丈夫なんですね?

(半平太) 2022/07/23(土) 14:28


(半平太)さん

なるほど。確かにズレますね。
大丈夫じゃないですねw
困りましたね・・・

手計算ではこのようなことは起こらなのに、エクセルでは起こるというのはプログラムされているカレンダーとの兼ね合いですね。

想像以上に難しい話になってきました。
(みょん) 2022/07/23(土) 16:16


 >エクセルでは起こるというのはプログラムされているカレンダーとの兼ね合いですね。
 ちょっと意味が分からないですが、DATEDIF()の"MD"オプションにはバグがあるので
 カジュアルには使えないです。

 >なるほど。確かにズレますね。
 期間の考え方にブレはない様なので、以下でどうですか?
  
 =DATEDIF(誕生日,今日,"M")+((DAY(今日)-DAY(誕生日)+(DAY(今日)<DAY(誕生日))*30)>=16)

(半平太) 2022/07/23(土) 20:03


(半平太)さん

ありがとうございます。

ご提案いただいた関数を試してみました。
しかし、おそらくこちら側のエラーだと思うのですが、1900/1/1と出てきます。

(みょん) 2022/07/25(月) 12:33


 >1900/1/1と出てきます。

 月齢のセルの書式は、「標準」か「数値」にしてください。

(半平太) 2022/07/25(月) 14:10


(半平太)さん

ありがとうございます。
完璧です!
助かりました。こうみると、足して、引いて、掛けてとか、数学ですね。
(みょん) 2022/07/25(月) 14:50


数学を知らないものは Excel を使うべからず。
(おしえ) 2022/07/25(月) 15:05

 >数学ですね。

 30日を基本と考える関数なんてないですから、自分で工夫するしかないです。

 ※ DAYS360()関数がそれに近いですが、
   月末日の扱いがみょんさんとは異なるので使えないです。

(半平太) 2022/07/25(月) 15:42


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.