みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
よろしくお願いします。
Filemaker pro 19を使用しております。
テスト勉強の計画表を作ろうとしています。
テスト範囲の課題の最初のページ数と終わりのページ数を入力し、その日にする予定のページ数を入力して
カレンダーに下記のように表示させました。
日付 国語テスト範囲始め 国語テスト範囲終わり 今日やるページ数 今日の開始ページ 今日の終了ページ 今日分
1/16 30 72 4 30 33 30~33
1/17 30 72 6 34 39 34~39
・
・
・
1/24 30 72 6 68 73 68~73
・
現在、各フィールドの定義は以下のようにしております。
国語テスト範囲始め: 数字フィールド(グローバル)最初に入力する
国語テスト範囲終わり: 数字フィールド(グローバル)最初に入力する
今日やるページ数: 数字フィールド 1日ずつできる量を手入力する
今日の開始ページ: 計算フィールド =Case ( Get(レコード番号)-1=0; 国語テスト範囲始め;GetNthRecord(今日の終了ページ;Get(レコード番号)- 1)+1)
今日の終了ページ: 計算フィールド =今日の開始ページ + 今日やるページ数-1
今日分: 計算フィールド: 今日の開始ページ & "~" & 今日の終了ページ
今このようになっていて1/24にテスト範囲を過ぎてしまうので、今日分のフィールドに、テスト範囲の最初に戻って”68~31”と表示させたいのですがうまくできてません。
どのようにすればよいでしょうか。
ややこしくて申し訳ありませんがヒントだけでもご教示いただければ幸いです。
let (
[
s0 = 国語テスト範囲始め ;
s1 = 国語テスト範囲終わり ;
e = 今日の開始ページ + 今日やるページ数 - 1
] ;
s0 + 1 + mod ( e - s0 - 1 ; s1 - s0 )
)
で求められます
Last edited by Shin (2023-01-15 12:53:10)
Offline
Shin様 ありがとうございます!大変助かりました!
その式の意味をよーーーく考えて使ってくださいね。実は、なかなか難しい式です。
Offline
Shin 様 ありがとうございます。自分で作ったものは循環参照になってしまって困ってました。余りを求めることに考えが至りませんでした。使いやすい計画表ができそうです。
Pages: 1
[ Generated in 0.007 seconds, 7 queries executed - Memory usage: 554.54 KiB (Peak: 582.68 KiB) ]