みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
いつもお世話になっております。
2016/09/25の前月は2016/08/25
2016/09/30の前月は2016/08/31とでる計算式を教えてください。
Last edited by まみこ (2016-09-15 14:45:25)
Offline
ベタベタですが、、
Let ( [ dt = 日付 ;
m = Month ( dt ) ;
dy = Day ( dt ) ;
y = Year ( dt ) ;
m2 = Month ( dt + 1 ) ] ;
Case ( m ≠ m2 ; Date ( m ; 0 ; y ) ; Date ( m - 1 ; dy ; y ) ) )
日付の1日後が翌月ならば月末と判断して前月月末にしています。
Offline
3/30などは、どうするのかな。
ぎゃ!全く抜けていました ;;
Let ( [ dt = 日付 ;
m = Month ( dt ) ;
dy = Day ( dt ) ;
y = Year ( dt ) ;
m1 = Month ( dt + 1 ) ;
dy2 = Date ( m - 1 ; dy ; y ) ;
m2 = Month ( dy2 ) ] ;
Case ( m ≠ m1 or m = m2 ; Date ( m ; 0 ; y ) ; dy2 ) )
前月の同日付が今月なら、前月月末
を加えました。
変更をお願いします -_-
Offline
Let (
d = 日付 + 1 ;
Min ( Date ( Month ( d ) - 1 ; Day ( d ) - 1 ; Year ( d) ) ; Date ( Month ( 日付 ) ; 0 ; Year ( 日付 ) ) )
)
でもいいかな。
ミスを修正済み
Last edited by Shin (2016-09-16 13:59:42)
Offline
回答ありがとうございました。
どちらも希望通りできました。
Offline
Pages: 1
[ Generated in 0.005 seconds, 10 queries executed - Memory usage: 504.97 KiB (Peak: 509.51 KiB) ]