このエントリーをはてなブックマークに追加

チェックボックスでレポートの表示を切り替える。

こちらは、Accessで作成したフォームにチェックボックスを単独で配置しています。「人口500万人以上」のチェックボックスをオンにして、「都道府県表示」ボタンをクリックすると、人口500万人以上の都道府県を抽出したレポートが表示されます。

フォーム

こちらが、そのレポートです。人口500万人以上の都道府県が抽出され、ヘッダー部分の「都道府県一覧」というタイトルラベルを、このときは「人口500万人以上」と表示されるようにしています。

レポート

チェックボックスがオフの状態で「都道府県表示」ボタンをクリックすると、すべての都道府県を表示します。こちらは、2ページあるうちの1ページ目です。

 

レポート

コードの記述

では、コマンド1(都道府県表示ボタン)クリック時イベントにコードを書きます。

  1. チェック1(チェックボックス)にチェックが入っている時と、入っていない時で、If Elseステートメントで条件分岐をします。
  2. Ifで、チェック1のValueプロパティがTrueのとき、抽出条件を、[県人口]フィールドの値が500万以上に指定して、レポートを印刷プレビューモードで開きます。
  3. ElseIfで、チェック1のValueプロパティがFalseのとき、抽出条件は指定せずに、レポートを印刷プレビューモードで開きます。
  4. それ以外、Elseのときも、抽出条件は指定せずに、レポートを印刷プレビューモードで開きます。
Private Sub コマンド1_Click()
If Me.チェック1.Value = True Then
    DoCmd.OpenReport "R_都道府県", acViewPreview, , "県人口 >= 5000000"
ElseIf Me.チェック1.Value = False Then
    DoCmd.OpenReport "R_都道府県", acViewPreview
Else
    DoCmd.OpenReport "R_都道府県", acViewPreview
End If
End Sub

次に、レポートの読み込み時イベントにラベルの表示を変更します。
チェック1のValueプロパティがTrueのとき、タイトルラベルの表示を「人口500万人以上」とします。それ以外の時は、なにも記述していませんが、元々設定している「都道府県一覧」と表示されます。

Private Sub Report_Load()
If Forms!F_main!チェック1.Value = True Then
    Me.lbl_標題.Caption = "人口500万人以上"
End If
End Sub

レポート表示

レポート

このエントリーをはてなブックマークに追加

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントフィード

トラックバックURL : http://gyoumuka.work/wp-trackback.php?p=2858

PAGE TOPへ戻る