過去の桐井戸端BBS (桐ver.9)
24768 1年間の特定の曜日の月日をすべてデータ表示したい トム 2004/02/12-02:12
お久しぶりです。皆様のお知恵をご教授ください。
今、V9において、sampleデータを基に「会議予約システム」を作成中です。
この中で、いろいろと困った状況があるのですが、まず一つ目をお助けください。
毎週同じ曜日の同じ時間に同じ会議が予定されています。
そこで、「予約表.tbl」に1年間のデータとして、たとえば、「月曜日」「9:00〜10:00」
「会議室A」等のデータを1年間の中で月曜日になる月日を抽出して表に表示させたいのです。
つまり、1年間で月曜になる52日の月日の一覧をTBL表に自動的に表示させる方法があれば、
是非、お願いいたします。
24779 Re:1年間の特定の曜日の月日をすべてデータ表示するには? 宮城 2004/02/12-12:56
記事番号24768へのコメント
トムさん。こんにちは。

日時型の年月日項目が当然あるはずですね。曜日項目がなければ追加してください。
表定義で項目計算式を次のようにします。

#曜日([年月日項目名])

この項目を比較条件式「月」で絞り込むだけですが。

24795 Re:1年間の特定の曜日の月日をすべてデータ表示するには? トム 2004/02/12-20:26
記事番号24779へのコメント
宮城さん、こんばんは。早速のご教授ありがとうございます。
>
>日時型の年月日項目が当然あるはずですね。曜日項目がなければ追加して
>ください。表定義で項目計算式を次のようにします。
>
>#曜日([年月日項目名])

おっしゃるとおり、項目「年月日」「曜日」を作成し、項目「曜日」の項目計算式には
比較式「#曜日([年月日項目名])」をすでに登録してあります。
>
>この項目を比較条件式「月」で絞り込むだけですが。
>
ということは、項目「年月日」に1年間の年月日をあらかじめデータとして手入力しておくということでしょうか?

違った意味のご説明でしたらすみません。
今回の私の求めることは、例えば、平成16年度の1年間のうち「月」曜日となる月日を自動的に項目「年月日」に表示させたいのです。
もし、ご説明いただいた方法で可能でしたら、もう少し詳しくご教授いただきたいのですが。
よろしくお願いいたします。


24798 月曜日だけを表示させたいとは 佐田 守弘 2004/02/12-22:33
記事番号24795へのコメント
トムさん
 >ということは、項目「年月日」に1年間の年月日をあらかじめデータとして
 >手入力しておくということでしょうか?

 >今回の私の求めることは、例え
 >ば、平成16年度の1年間のうち「月」曜日となる月日を自動的に項目「年
 >月日」に表示させたいのです。

と書かれておりますが、期待している事は、全く何も書き込んでいない表に、
月曜日と指示すれば、平成16年の月曜日だけの日付を自動で書き込みたいという事でしょうか。

通常は、宮城さんも書かれている通り、1年分の日付データを作っておき、
月曜日なら月曜日、火曜日なら火曜日と、必要な曜日を絞り込んで表示するというのが普通なのですが。
月曜日だけの表を作ってしまうと、火曜日や水曜日を表示したいときにできないのではないですか?

それはさておき、ひょっとして1年分の日付を手入力で表に作り出すのが、
煩わしいと考えておられるのではないかとも思えましたので、参考までに述べておきます。

何もデータが入力されてない表の定義画面で、[年月日]の挿入初期値式に以下の式を定義して下さい。
 #日数加算(#直前値([年月日],d"2004-1-1"),1)
設定を終えたら、編集画面に戻り、行挿入モードに入ってから、ctrl+↓を
押し続けて下さい。数秒で1年分の日付が自動で入ります。

もし月曜日だけの日付を作り出すなら、以下の式で試してみて下さい。
 #日数加算(#直前値([年月日],d"2004-1-5"),7)

佐田守弘(KS-00119)


24806 Re:月曜日だけを表示させたいとは トム 2004/02/12-23:37
記事番号24798へのコメント
佐田 守弘様、ご教授ありがとうございます。

>期待している事は、全く何も書き込んでいない表に、月曜日と指示すれば、平成16
年の月曜日だけの日付を自動で書き込みたいという事でしょうか。
>
全くその通りです。

>月曜日だけの表を作ってしまうと、火曜日や水曜日を表示したいときにできない
>のではないですか?
>
もちろん、必要な曜日が別にあれば、同様にその曜日と指示すれば、
平成16年の月曜日だけの日付を自動で書き込みたいと考えていました。

>それはさておき、ひょっとして1年分の日付を手入力で表に作り出すのが、
>煩わしいと考えておられるのではないかとも思えましたので、参考までに
>述べておきます。
>
その通りで、煩わしさもありますが、必要のない曜日をデータとして残しておくと、
今後予約システムに続々と予約データが加算されていくと、膨大な量になると思ったからです。
それならば、最初に必要な曜日だけを入力しておこうと考えた次第です。

>何もデータが入力されてない表の定義画面で、[年月日]の挿入初期値式に
>以下の式を定義して下さい。
> #日数加算(#直前値([年月日],d"2004-1-1"),1)
>設定を終えたら、編集画面に戻り、行挿入モードに入ってから、ctrl+↓を
>押し続けて下さい。数秒で1年分の日付が自動で入ります。
>
>もし月曜日だけの日付を作り出すなら、以下の式で試してみて下さい。
> #日数加算(#直前値([年月日],d"2004-1-5"),7)

挿入初期値式にご教授頂いたとおりに式を定義すると、期待通りのデータを作成することが可能になりました。

宮城様、佐田様本当にありがとうございました。

P.S.私のデータの扱い方が少々異種的なのでしょうか?

24808 Re:1年間の特定の曜日の月日をすべてデータ表示するには? 宮城 2004/02/12-23:53
記事番号24795へのコメント
一年分の表ありきじゃなかったのですね。

佐田さんがお書きになっていますが、まあ私も一応。
表を開いて行削除し(必要なら表整理)しておいて下さい。次の一括処理を走らせます。

変数宣言 共通,日時{&作業日}
&作業日=d"H16/4/1"
繰り返し(&作業日<=d"H17/3/31")
 ケース開始
  ケース(#曜日(&作業日)="月")
   行追加 [年月日]=&作業日
 ケース終了
 &作業日=#日数加算(&作業日,1)
繰り返し終了

開始・終了は適宜書き直してください。

24813 Re:1年間の特定の曜日の月日をすべてデータ表示するには? トム 2004/02/13-03:01
記事番号24808へのコメント
宮城様

ありがとうございます。一括処理上での処理がまた幅広くなりました。お世話をかけました。

戻る