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

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

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

You are not logged in.

Announcement

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


#1 2022-12-09 15:51:10

oumankan
Guest

翌月の表示方法

お世話になっております。
FM18 win11

YYYY/MMだけ表示したく
Year ( Get ( 日付 ) ) & "/" & Right ( "0" & Month ( Get ( 日付 ) )  ; 2 )
という計算フィールドを作成しました。

上記の翌日の計算フィールドを作成したく
Year ( Get ( 日付 ) ) & "/" & Right ( "0" & Month ( Get ( 日付 ) ) + 1 ; 2 )
と作成したところ現在
2022/13となってしまいます。

2023/01と表示させるいい方法はないでしょうか?

#2 2022-12-09 16:41:13

チポ
Member

Re: 翌月の表示方法

> YYYY/MMだけ表示したく
レイアウトモードで日付フィールドの書式設定で出来ます。

> 翌日の計算フィールド
翌月ですよね。
Date ( Month ( Get ( 日付 ) ) + 1 ; 1 ; Year ( Get ( 日付 ) ) )
これが翌月の月初の日付です

Offline

#3 2022-12-09 17:14:59

Shin
Member

Re: 翌月の表示方法

let (
      d = Date ( Month ( Get ( 日付 ) ) + 1 ; 1 ; Year ( Get ( 日付 ) ) ) ;
      Year ( d ) & "/" & Right ( "0" & Month ( d )  ; 2 )
)
とするのが、汎用性があっていいでしょう。20ヶ月後でも同じように計算できます。
または、
Case (
      Month ( Get ( 日付 ) ) = 12 ; Year ( Get ( 日付 ) )  + 1 & "/01 ;
      Year ( Get ( 日付 ) ) & "/" & Right ( "0" & Month ( Get ( 日付 ) ) + 1 ; 2 )
)

Last edited by Shin (2022-12-09 18:55:35)

Offline

#4 2022-12-10 08:55:27

oumankan
Guest

Re: 翌月の表示方法

チポ様
書式設定の変更だけだと裏ではYYYY/MM/DDという表示になっておりリレーションがうまくいきませんでした…

Shin様
Let関数を採用させていただきました。ありがとうございました。

#5 2022-12-10 09:27:03

Shin
Member

Re: 翌月の表示方法

リレーションのキーにするのでしたら、例えば、キーになるフィールドを月初の日に設定してしまう(これなら、表示も書式の設定だけでいいです)か、
Year ( 日付 ) * 12 + Month ( 日付 )
を使うことをおすすめします。この式ですと、年跨ぎに関係なく連続した数字になりますので、加減が簡単です。
年月に戻す時には、
Div ( 結果 - 1 ; 12 ) & "/" & Mod ( 結果 - 1 ) ; 12 ) + 1
です。

Last edited by Shin (2022-12-10 09:45:34)

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 547.25 KiB (Peak: 578.88 KiB) ]