13 返信 最新の回答 日時: May 25, 2015 10:44 PM ユーザー:user23503

    時間帯を出す計算式

    user23503

      フィールドに

      ①月日  ②曜日  ③時間  ④祝日  ⑤時間帯  があるのですが、

      ⑤時間帯に 「平日日中」 「夜間」 「日曜祝日」 と いれる計算式を作りたいです。 

       

       上記フィールドを基に ⑤時間帯フィールドに

         時間が 18:00~翌朝8:00 であれば  時間帯フィールドに 「夜間」

         それ以外の時間帯で

          曜日フィールドが日曜日または、祝日フィールドに何か入っていれば  時間帯フィールドに 「日曜祝日」

          それ以外は 「平日日中」

         ①月日 ②曜日 フィールドが空欄の場合は 何もしない

       という計算式を作りたいのですが、うまくいきません。

       

      入力する順番は番号順で ①月日 → ③時間 となっています。

       

      ②曜日は DayNameJ(月日) で ①月日入れると表示するようにしています。

      ④祝日は 祝日テーブルを設けて リレーションして、①月日を入れると表示するようにしています

           祝日テーブルの構成は  「年月日」 「祝日名」 で 「①月日」と「年月日」をリレーションしています

       

      Case (

       IsEmpty ( 月日 ) ; "" ;

       IsEmpty ( 曜日 ) ; "" ;

       IsEmpty ( 時間 ) ; "" ;

       時間 ≥ "18:00" ; "夜間" ;

       時間 ≤ "8:00" ; "夜間" ;

       曜日 = "日曜日" ; "日曜祝日" ;

       IsEmpty ( 祝日テーブル::祝日名 ) ; "平日日中" ;

       "日曜祝日"

      )

       

      と作ってみたのですが、うまくいきません。

      一度入力して、その内容が間違っていた為、修正を行った場合に、

      最初に選んだ内容も修正されるようにしたいです。

        たとえば、 4月29日(みどりの日)の 10:00   →  日曜祝日   だけど、

              4月29日(みどりの日)の 22:00   →  夜間  となってしまったばあい、

       

        今の状態だと、自動的にかわらないので、時間帯フィールドを削除して入れなおすということをしないといけないのですが、

        時間をいれなおせば、自動的に 時間帯も 日曜祝日に変更するようにしたいです。

       

      説明がわかりにくいかと思いますが

      是非是非 ご教示ください。 よろしくお願いします。