何か月後の月を表示する方法

 

月は、1〜12月までの12しかありません。

=(式)フィールドを利用して、計算をすると、

たとえば、2か月後の月を表示したい場合、単純に、

今月 + 2 = 2か月後の数値、としますと、11月と12月は、それぞれ13月、14月と表示されてしまいます。

 

これを回避するための方法として、割り算の余り(剰余)を利用します。

剰余とは、ある数値以下の数値を、ある数値で割ると、割り算そのものの整数の商は、「0(ゼロ)」となりますが、その余りはある数値以下そのものの数値になります。

 

今月の数値にこれを利用してみますと、

MOD(今月,12+ 2

ところが、11月が13月になってしまいます。

それでは、

MOD(今月+2,12

にしますと、10月が0.0 と表示されてしまいます。余りが無いからです。

 

そこで、これらの問題点を解決する方策として、上記の2つの式の折衷案として、

MOD(今月+1,12+ 1

としますと、何月にでも対応することができます。

 

ということで、公式としては、

MOD(今月+(何か月-1,12+ 1

となります。

 

これをフィールドコードにしますと、

{ =MOD({ DATE \@ M }+ #,12} + 1 }

となります。#は、何か月後から1を差し引いた数値を代入します。

 

 

 

 

home.gif