過去の桐井戸端BBS (桐ver.8)
9672 常に先月を絞り込みするような式は? Oliver 2001/02/06-21:49
在庫管理の仕事を桐で行っています。
毎日の入出状況を日付ごとに入力していき、翌月に先月分の集計をとっています。
日付のデータはH13/ 2/ 5のように文字列です。
常に先月のデータを絞り込みたいので、絞り込み条件名に以下のような式を入力しております。

#先頭一致([日付],#条件選択(#月(#年月日)=1,#連結("H",#STR(#元号年(#年月日)-1),"/12"),#月(#年月日)-1<10,#連結("H",#STR(#元号年(#年月日)),"/ ",#STR(#月(#年月日)-1),#月(#年月日)-1>=10,#連結("H",#STR(#元号年(#年月日)),"/",#STR(#月(#年月日)-1))),1)=1

しかしながら、あまりにも長々とわかりにくい式のため、もっと簡単に常に先月のデータを絞り込みたいと思います。
1月、2月といったように月ごとに絞り込み条件を作成する方法もあるかと思いますが、
レポートで表の操作の絞り込み条件を指定し印刷したいため、毎月絞り込み条件を変更するのではなく、
必ず先月を絞り込む方法を検討しております。
どなたか良い方法をご教授くださいますようお願いします。
桐はVer.8Sp6です。
9674 Re:常に先月を絞り込みたい。 佐田 守弘 2001/02/07-00:54
記事番号9672へのコメント
Oliverさん
条件式が複雑でも、結果が正しければそれでも構わないですよ。

それはさて置きまして、簡単に書くなら次の通りです。
ただし、以下は桐ver.8(桐ver.6以降で可能)を前提としております。
(桐ver.5まででは行えません。)

●日付は日時型の方が良いでしょう
文字列型でも構いませんが、日付型の方が何かと便利です。
以下は日付を日時型とした場合について述べます。

●今月を選ぶ比較式
 [日付]{#条件選択(#月([日付])=#月(#日時値),[日付],1,#未定義)}
あるいは、上記の{}の中の比較式を
 #月([日付])=#月(#日時値)
と記述してもできるかも知れません(確か桐ver.6以降の機能)。

もし条件名に登録するなら、最初の式の{}の中を記述してみて下さい。
なお、日付が文字列型の場合には、#日時値の代りに、#年月日と記述して下さい。

9694 Re:常に先月を絞り込みたい。 MIT 2001/02/07-16:47
記事番号9672へのコメント
Oliverさん
Win桐になって日時型がサポートされましたので
佐田先生がご指摘の通り、日付データは日時型にする方が何かと扱いやすいと思います。
さて、前月分のデータを手軽に出力したい一案です。
該当の表だけを使った結合表を作成し、これに計算項目を追加して

計算式に
#条件選択(#月末(#月数加算(#年月日,-1,1))=#月末([日付]),1,1,0)

絞込み条件に


を定義します。
この結合表を開けば、前月分のデータのみ表示されると思います。
該当レポートの対象表をこの結合表にしておけば、レポートを開いて印刷するだけの手順となります。
上記計算式は式を短くするために#月末を使いましたが、先月の概念が月だけの場合のみ有効です。
締め日概念の場合は相手先単位などで先月算定の工夫が必要でしょう。
以上ご参考まで。MIT

9700 1月の時に先月を絞り込むには? Oliver 2001/02/07-22:41
記事番号9674へのコメント
佐田 守弘さんは No.9674「Re:常に先月を絞り込みたい。」で書きました。

早速のご回答ありがとうございます。
佐田先生の
>●今月を選ぶ比較式
> #月([日付])=#月(#日時値)
を元に先月を選ぶ比較式を
#月([日付])=#月(#日時値)-1
にしてみたところうまくいきました。
ありがとうございます。
しかしながら、この方法では1月の時に先月である12月が選べなくなると思います。
条件選択してやるしかないんでしょうか?
もし、条件選択するならどのような式にすればよろしいのでしょうか?
もう一度ご教授くださいますようお願いします。

戻る