アプリ版:「スタンプのみでお礼する」機能のリリースについて

入力日、タイプ:日付に2005/8/5と手動でいれたら、
有効期限(タイプ:日付)に自動で2005/9/5というように、入力日から一ヵ月後の日付を出すにはどのような計算式をいれたらよいのでしょうか?

参考書に載っていた
Date(Month(入力日)+ 1 ; Day(入力日); Year(入力日)という式を使うと
2005/08/01 と打ち込むと、2005/9/9 とでてしまいます。
2005/12/30の場合は、2006/1/1と出ます。
どうしたら、よいか教えてください。

A 回答 (5件)

---------------------------------------------------


If ( Month ( Date ( Month ( 入力日 ) + 1 ; Day ( 入力日 ) ; Year ( 入力日 ) ) ) > Month ( Date ( Month ( 入力日 ) + 1 ; 1 ; Year ( 入力日 ) ) )
;
Date ( Month ( 入力日 ) + 1 + 1 ; 0 ; Year ( 入力日 ) )
;
If(Day ( Date ( Month ( 入力日 ) ; Day ( 入力日 ) + 1 ; Year ( 入力日 ) ) ) = 1
;
Date ( Month ( 入力日 )+1+1 ; 0 ; Year ( 入力日 ) )
;
Date ( Month ( 入力日 ) + 1 ; Day ( 入力日 ) ; Year ( 入力日 ) ))
)
------------------------------------------------------
フィールドタイプは「計算」で結果は「日付」です。

私が過去に他の方の回答に使用した式です。コピペで使えます。
検証は適当ですのでご自分でどうぞ。
    • good
    • 1
この回答へのお礼

ありがとうございました。さっそくやってみます。

お礼日時:2005/08/09 18:18

#3です。



再補足です。

提示した式はFMP7形式ですので、FMP6以前のバージョンをお使いであれば、式中の「;」を「,」に変換してください。
テキストエディタを利用すれば簡単に出来ます。

次から式を質問するときはバージョンを書いてください。上記のように、書式が変わりますので。
    • good
    • 0

#3です。



式の補足ですが、2005/6/30と入れると結果は2005/7/31になります。
31日後ではないのでご注意を。普通そんな結果を求める人はいないと思いますが。
    • good
    • 0

質問ですが、1ヶ月後というのは、入力日の31日後の日付ということですか?例えば入力日が2005/1/30なら有効期限は2005/3/2でいいということになりますが、それでよければ極めて簡単で、有効期限の計算式を


「入力日+31」
とすればいいことになりますね。
しかし有効期限をあくまで翌月の対応日(例えば入力日が2005/2/28なら有効期限を2005/3/28に)したいというのなら、一旦「年、月、日」をそれぞれテキストに変換しなおかつIF関数などで条件を定めない限り無理な話です。
例えば入力日が2005/1/30なら2005/2/30という対応日は存在しないのでそのときは2/28にするとかですね。
    • good
    • 0
この回答へのお礼

ありがとうございました。2月のことは忘れていました。

お礼日時:2005/08/09 18:19

入力時の時間をUnixTimeにして、24*60*60するとか

    • good
    • 0
この回答へのお礼

アドバイスありがとうございました。

お礼日時:2005/08/09 18:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A