Google検索

Office2019 Access2019

コマンドボタンでコントロールの表示と非表示を切り替える

投稿日:

Accessではフォームにボタンを設置して、クリックしてフォームやレポートの表示を実行することが多いです。

2個のボタンを設置して同じレポートを開くのですが、1個のボタンはレポートの一部のコントロールを非表示にして開く方法を紹介します。

ここでは、現在の日付と時刻が表示されるレポートと、日付と時刻が非表示のレポートを開くするようにします。

Accessのメニューフォーム

日付と時刻のコントロールを表示したレポートと、コントロールを非表示にしたレポートを作成して、それぞれのボタンに設定するのが簡単かもしれませんが、レポートを増やしたくない場合もあると思います。

同じレポートを開くのですが、日付と時刻のコントロールのみを非表示にする方法もあります。

フォームのボタンのクリック時イベントで設定します。

参考ここでは、ウィンドウは[重ねて表示する]の設定にしています。

[タブ付きドキュメント]と[ウィンドウを重ねて表示する]の違い

Access2007以降、オブジェクトを表示すると、タブ付きウィンドウで表示されるようになっています。従来からAccessを使用している方に ...

続きを見る

レポートの作成

以下のようなテーブルをもとにレポートを作成します。

テーブルのデータシートビュー

ここでは、簡単にテーブル[T_商品]を選択して、[作成]タブの[レポート]グループにある[レポート]をクリックして作成しています。

レポート

現在のクエリまたはテーブルのデータの基本レポートを作成します。このレポートにはグループ化や集計などの機能を追加できます。

[作成]タブの[レポート]グループにある[レポート]

[レポート]をクリックするだけで、一瞬で作成できて便利です。

レポートの完成

ここでは、ヘッダーの標題やページ設定などを変更して、レポートの名前は[R_商品]としています。

自動的にレポートヘッダーに日付と時刻が表示されるようになっています。

現在の日付と時刻が表示されたレポート

日付と時刻のコントロールの名前を確認

レポートをデザインビューで開いて、日付と時刻のプロパティから名前を確認します。

テキストボックスに[=Date()]と表示されているのが日付で、[=Time()]と表示されているのが時刻です。

レポートヘッダーの[=Date()]と表示されたテキストボックスを選択して、[F4]キーを押してプロパティを表示します。

[すべて]タブの[名前]で確認できます。上部のコンボボックスでも確認できます。

参考テキストボックスの[コントロールソース]に[=Date()]で現在の日付、[=Time()]で現在の時刻を表示できます。日付や時刻の書式はプロパティの[書式]のプルダウンメニューから選択して変更できます。

テキストボックスのプロパティ

[=Time()]と表示されたテキストボックスも選択して名前を確認します。[名前]は[その他]タブでも確認できます。

時刻が表示されたテキストボックスのプロパティ

日付は[Auto_Data]時刻は[Auto_Time]となっていることが分かります。

参考レポートウィザードを使用してレポートを作成する方法は、以下の記事で解説しています。

レポートウィザードでレポートを作成

Accessのテーブルやクエリを基にレポートウィザードを使用してレポートを作成することができます。 ウィザードで作成した後、より見やすいレポ ...

続きを見る

フォームにボタンを設置

白紙のフォームにコマンドボタンを2個設置します。

[デザイン]タブの[コントロール]グループにある[ボタン]をクリックします。

[コマンドボタンウィザード]が表示されたら、[キャンセル]ボタンをクリックして閉じます。

[デザイン]タブの[コントロール]グループにある[ボタン]

コマンドボタンの標題

[詳細]領域にドラッグしてボタンを2個作成したら、コマンドボタンの[標題]をそれぞれ、[日付/時刻ありで印刷]と[日付/時刻なしで印刷]とします。

コマンドボタンのプロパティ[表題]

コマンドボタンの名前

コマンドボタンの名前は、プロパティの[その他]タブで変更できます。

ここでは、自動的に付けられた名前のままにしています。

[日付/時刻ありで印刷]と表示されたコマンドが[コマンド0]、[日付/時刻なしで印刷]と表示されたコマンド[コマンド1]です。

プロパティの[その他]タブの[名前]

参考ボタンの書式設定とスタイルの変更については、以下の記事で解説しています。

コマンドボタンの背景色、ポイント時とクリック時の色を設定

Access2010から、フォームで作成したコマンドボタンの背景色が設定できるようになりました。ポイント時の色や、クリック時の色も設定できま ...

続きを見る

コマンドボタンのスタイル変更

Access2013のフォーム(デザインビュー)でコマンドボタンを挿入すると、既定では下のようなデザインとなります。 このコマンドボタンのス ...

続きを見る

コードビルダーを選択してコードを入力

[日付/時刻ありで印刷]と表示されたコマンドボタンをクリックして、プロパティを表示します。

[イベント]タブの[クリック時]の[...]をクリックします。

コマンドボタンのクリック時イベント

または、ボタンで右クリックしてショートカットメニューから[イベントのビルド]をクリックします。

ボタンを右クリックした時のショートカットメニュー[イベントのビルド]

[ビルダーの選択]ダイアログボックスが表示されますので、[コードビルダー]を選択して[OK]ボタンをクリックします。

[ビルダーの選択]ダイアログボックス

以下のようにコードを入力します。

これで、レポート[R_商品]が印刷プレビューで開かれます。

参考[acViewPreview]で印刷プレビューで開くということになります。ここを[acViewReport]にすると、レポートビューで開きます。

DoCmd.OpenReport "R_商品", acViewPreview

VBEに入力したコード

VBEウィンドウは、保存して閉じます。

[コマンド0]のプロパティ[クリック時]には、[イベントプロシージャ]と表示されます。

[コマンド0]のプロパティ

日付と時刻を非表示にする

[日付/時刻ありで印刷]と表示されたコマンドボタンをクリックして、プロパティを表示します。

[イベント]タブの[クリック時]の[...]をクリックします。

上記と同じように[ビルダーの選択]ダイアログボックスが表示されたら[コードビルダー]を選択します。

そして、以下のようにコードを入力します。

注意オブジェクト名に全角括弧やスペースなどが含まれている場合は、半角の角括弧 [] で括ります。例:[R_商品(営業部)] [R_商品 営業部]

名前を付ける時は、できるだけ全角括弧やスペースなどは使用されないことをお勧めします。

Access データベースでの作業時に使用すべきでない特殊文字(Microsoft)

DoCmd.OpenReport "R_商品", acViewPreview

Reports!R_商品!Auto_Date.Visible = False
Reports!R_商品!Auto_Time.Visible = False

VBEに入力されたコード

レポートのコントロールを参照するには、レポート名のあとに[!](感嘆符)を付け、プロパティ名をつなぐときは[.](ドット)を使用します。

[Reports!R_商品!Auto_Date.Visible = False]は、レポート[R_商品]の[Auto_Data]の[可視]を[False]にして、非表示にするということです。

[Reports!R_商品!Auto_Time.Visible = False]は、レポート[R_商品]の[Auto_Time]の[可視]を[False]にして、非表示にするということです。

VBEウィンドウは、保存して閉じます。

[コマンド1」のプロパティ[クリック時]には、[コマンド0]と同じように[イベントプロシージャ]と表示されます。

フォームのボタンをクリックして確認

フォームに設置したボタンをクリックして確認してみます。

フォームビューに切り替えて、[日付/時刻ありで印刷]のボタンをクリックします。

フォームビューのボタン

現在の日付と時刻が表示されたレポートが印刷プレビューで表示されます。

日付と時刻が表示されたレポート

[日付/時刻なしで印刷]のボタンをクリックします。

[日付/時刻なしで印刷]のボタンをクリック

日付と時刻は非表示になっています。

日付と時刻が非表示のレポート

参考以下の記事では、コンボボックスの値集合ソースをボタンで切り替える方法を解説しています。

コンボボックスの値をボタンで切り替え

Accessのフォームでコンボボックスの値集合ソースをボタンで切り替える方法です。 下のようなフォームを作成しています。 [日本食]ボタンを ...

続きを見る

値によって、使用可と使用不可に切り替える方法も解説しています。

値によってテキストボックスの使用可と使用不可を切り替える

Accessのフォームで1つ目のコンボボックスで選択した値によって、次のテキストボックスの使用を有効にしたり、無効にしたりする方法です。 た ...

続きを見る

Profile

執筆者/はま

おすすめ記事と広告

-Office2019 Access2019

Copyright © 2001-2019 初心者のためのOffice講座 All Rights Reserved.

Copyright© 初心者のためのOffice講座 , 2019 AllRights Reserved Powered by AFFINGER4.