いつもお世話になっております。初歩的な質問だったらすみません。
月間請求書履歴というフォームがあり、クエリで期間を設定し表示しています。Runtimeで配布している人にも簡単にできるようにこのフォームの中に”1月”・”2月”というボタンを作ってしまいそれを押せば1ヶ月分がでるみたいなことをしたいので調べてはみたのですが、テキストボックスを使用するものとかパラメータクエリが出てきて知りたいことがわかりませんでした。こういうことは可能なのでしょうか。
いつもお世話になっております。初歩的な質問だったらすみません。
月間請求書履歴というフォームがあり、クエリで期間を設定し表示しています。Runtimeで配布している人にも簡単にできるようにこのフォームの中に”1月”・”2月”というボタンを作ってしまいそれを押せば1ヶ月分がでるみたいなことをしたいので調べてはみたのですが、テキストボックスを使用するものとかパラメータクエリが出てきて知りたいことがわかりませんでした。こういうことは可能なのでしょうか。
フォームのFilterプロパティにVBAで抽出条件を設定するようにすればいいでしょう。
UIとしてはコマンドボタンより、コンボボックスで月を選択するようにするか、オプショングループ内にオプションボタンかトグルボタンを配置する設計にした方かいいでしょう。
まずは、コンボボックスの方が簡単なのでコンボボックスで作成してみて、うまくいったら、オプショングループに挑戦するのがいいでしょう。
まずはコンボボックスの方法を提示しておきます。
月間請求書履歴が帳票フォームとして、レコードソースに「売上日」という日付/時刻型のフィールドがあると仮定します。
「年」選択用のコンボボックスと「月」選択用のコンボボックスを配置します。
「年」コンボボックスを下記のように設定します。
名前 cb年
既定値 =Year(Date())
値集合タイプ 値リスト
値集合ソース 2018;2019;2020;2021;2022
「月」コンボボックスを下記のように設定します。
名前 cb月
既定値 =Month(Date())
値集合タイプ 値リスト
値集合ソース 1;2;3;4;5;6;7;8;9;10;11;12
「月」コンボボックスの更新後処理のイベントプロシージャに下記のように記述します。
「年」コンボボックスの更新後処理とフォームの読み込み時のイベントプロシージャを下記のように記述します。
以上です。
できましたありがとうございます。これなら年も設定できるので楽になりました。
余談で少し質問なのですが何日から何日までという設定も月の中で設定できるものなのでしょうか
1月というコンボボックスで12/21~1/20までを表示のような。
「月」コンボボックスの更新後処理のイベントプロシージャを下記のように変更すればいいでしょう。
少し加えるだけで出来てしまうのですね。ありがとうございました。
次はオプショングループに挑戦してみたいと思います。