初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-06-02 23:03:32

onias
Member

誕生日からの経過月と経過日 XX歳 XXヶ月 XX日と算出したいのですが。

oniasです。 FM15 Win10、8.1、iPhon6s

いつも大変お世話になっております。
誕生経過月居日を算出試みているのですが、これまでの内容を参考にして
年齢は出るようになりましたが、経過月と経過日がどうしてもうまくいきません。
ご指導下さい。

年齢計算は、以下で10歳と表示OKです。
Case (
IsEmpty ( フィールドA=誕生年を西暦表示で 2007 ) ; "" ;
IsEmpty ( フィールドB=本日の日付は 2017/6/2 ) ; "" ;
フィールドB=2017/6/2  < Date ( Month ( フィールドA=2007 ) ; Day ( フィールドA=2007 ) ; Year ( BQ_本日日付 ) )  ;
Year ( フィールドB=2017/6/2 ) - Year ( フィールドA=2007 ) - 1 ;
Year ( フィールドB=2017/6/2 ) - Year ( フィールドA=2007 ))

経過月は、空白で算出されません。
Case ( IsEmpty ( フィールドA=2007 ) ; "" ; IsEmpty ( フィールドB=2017/6/2 ) ; "" ; フィールドB=2017/6/2  < Date ( Month ( フィールドA=2007 ))

経過日も空白で算出NGです。
LeftWords ("BIRTHDAY"; Abs(Date(Month(Get(フィールドB=2017/6/2)); Day(Get(フィールドB=2017/6/2)); 2016) + 15 - Date (Month(フィールドA=2007);Day(フィールドA=2007); 2017)) <= 15)

Offline

#2 2017-06-03 08:21:03

onias
Member

Re: 誕生日からの経過月と経過日 XX歳 XXヶ月 XX日と算出したいのですが。

oniasです。追伸

「計算結果を保存せず、必要時に再計算すする」にしています。
月数だけでもと過去に相談された投稿者様の例も参考に試みしましたが、結果は、NGでした。
(Year(Get ( 日付 ))*12+Month(Get ( 日付 )))-(Year(date_in)*12+Month(date_in))+1-If(Day(Get ( 日付 ))<Day(date_in);1;0)

Offline

#3 2017-06-03 08:54:07

Shin
Member

Re: 誕生日からの経過月と経過日 XX歳 XXヶ月 XX日と算出したいのですが。

Let (
[
 d0 = Year ( 誕生日 ) * 12 + Month ( 誕生日) + Day ( 誕生日 ) / 100 ;
 d1 = Year ( Get ( 日付 ) ) * 12 + Month ( Get ( 日付 )) + Day ( Get ( 日付 ) ) / 100 ;
 ym = Int ( d1 - d0 ) ;
 d01 = Min ( Date ( Month ( 誕生日 ) + ym ; Day ( 誕生日 ) ; Year ( 誕生日 ) ) ; Date ( Month ( 誕生日 ) + ym + 1 ; 0 ; Year ( 誕生日 ) ) )
] ;
 Div ( ym ; 12 ) & "年 " & Mod ( ym ; 12 ) & "月 " & ( Get ( 日付 ) - d01 ) & "日" 
)

で、年月はでます。
日については、月末の細かい規則が必要です。例えば、2016年2月29日生まれで、2017年3月3日現在での日数の計算方法は?
上の式は、月末日にまとめてしまう計算式です。

手書きしたので、少し誤りがありました。修正しています。

Last edited by Shin (2017-06-03 15:09:15)

Offline

#4 2017-06-03 11:06:16

onias
Member

Re: 誕生日からの経過月と経過日 XX歳 XXヶ月 XX日と算出したいのですが。

Shin様

お陰様で算出できるようになりました。
確かに閏年まで計算は、大変そうですね、5月2日生まれの人は
計算後0ヶ月となりました。計算式勉強します。
大変助かりました。有難う御座います。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 509.41 KiB (Peak: 516.36 KiB) ]