Web、メール、印刷ドキュメントを作成するための Microsoft ワード プロセッシング ソフトウェア製品のファミリ。
ワードで未来や過去何か月後・前の月を表示する方法についての考察
●月は、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を差し引いた数値を代入します。
●まとめ
未来の月の数値を表すフィールドコード
{ = MOD ({ DATE @ M**}** + #,12 ) + 1 }
#の数字は、表示したい何か月後の数値から「1」を減じた数値です。
たとえば、来月(9月)は1ヶ月後ですので、+1から1を引きます。
{ = MOD ({ DATE @ M**}** + 0,12 ) + 1 }
とします。
++
過去の月の数値を表すには、
{ = MOD (({ DATE @ M**}**+12) - #,12 ) + 1 }
#の数字は、表示したい何か月前の数値に「1」を減じた数値です。
たとえば、先月(7月)は1ヶ月前ですので、-1から1を引きます。
(つまり、-2になります。)
{ = MOD (({ DA0TE @ M**}**+12) - 2,12 )
- 1 }
とします。
※1月の場合、余りが0.0(割り切れてしまう)になりますので、13にしなければなりません。