Windows8 & Office2013 Access2013

Print Friendly, PDF & Email

フォームのフィルター実行後のデータをレポートへ

投稿日:2017年6月18日 更新日:

Accessのフォームでフィルターを実行した後、そのフィルターのデータをそのままレポートへ出力する方法です。
フィルターで実行したデータをレポートへ出力

分割フォームの作成

テーブルやクエリを元に分割フォームを作成します。ここでは、クエリ[Q_売上]を元に分割フォームを作成しています。クエリ[Q_売上]を選択して、[作成]タブの[フォーム]グループにある[その他のフォーム]の▼ボタンをクリックします。その中にある[分割フォーム]をクリックします。

ポップヒントには以下のように記されています。注意ポップヒントの「上のセクション」は「下のセクション」、「下のセクション」は「上のセクション」の間違いだと思います。プロパティで上下を反対にすることはできますが、既定では下がデータシートビューとなっています。

分割フォームを作成します。分割フォームの上のセクションにはデータシートが表示され、下のセクションにはデータシートで選択したレコードの情報を入力するためのフォームが表示されます。

分割フォームは、Access2007からの機能ですがフォームビューとデータシートビューを同時に表示できるので、とても便利です。分割フォームについては、以下の記事を参照してください。

分割フォームを作成する - Access(Microsoft)

Access2007の分割フォーム

分割フォームでは、データシートビューのプルダウンからフィルターをかけることができます。このフィルターで抽出したデータを、そのままレポートへ出力する方法を解説します。
プルダウンメニュー

レポートの作成

レポートは、フォームと同じレコードソースで作成しておきます。レポートの名前は[R_売上一覧]とします。
レポートの作成

レポートへ出力ボタンの作成

フィルター実行後、レポートへ出力するためのボタンを作成します。
フォームをデザインビューで開きます。[デザイン]タブにある[コントロールグループ]にある[ボタン]をクリックして、フォームヘッダーでドラッグしてボタンを作成します。ウィザードが表示されたら[キャンセル]ボタンをクリックして閉じます。
コマンドボタンの作成

コマンドボタンのプロパティを表示します。[すべて]タブをクリックして、コマンドボタンの名前と標題を入力します。
コマンドボタンの名前と標題を入力

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

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

VBEが表示されたら、以下のように入力します。フィルターを実行していないときは、「先にフィルターを実行してください!」というメッセージボックスを表示して、それ以外は、レポート[R_売上一覧]のレポートプレビューとして出力します。参考印刷プレビューで表示したい場合は、[acViewPeport]を[acPreview]に変えてください。

If Me.FilterOn = False Then
MsgBox "先にフィルターを実行してください!"
Else
DoCmd.OpenReport "R_売上一覧", acViewReport, , Me.Filter
End If

クリック時イベントへ入力

 

フィルター解除ボタンの作成

もう一つフィルターを解除するためのボタンを作成します。

同じように[デザイン]タブにある[コントロールグループ]にある[ボタン]をクリックして、フォームヘッダーでドラッグしてボタンを作成します。ウィザードが表示されたら[キャンセル]ボタンをクリックして閉じます。
コマンドボタンのプロパティを表示します。[すべて]タブをクリックして、コマンドボタンの名前と標題を入力します。
フィルター解除ボタンの作成

[イベント]タブをクリックして、[クリック時]の[...]ボタンをクリックします。[ビルダーの選択]ダイアログボックスが表示されたら、[コードビルダー]を選択して[OK]ボタンをクリックします。今度は、以下のように入力します。

Me.FilterOn = False

クリック時イベント

これで実行してみてください。フィルターを実行していないときは、下のようにメッセージウィンドウが表示されます。
メッセージウィンドウ

解決できないことは【teratail】で質問してみましょう。

参考Officeのバージョンによって操作が異なる場合があります。以下の記事で、お使いのOfficeのバージョンを確認する方法を解説しています。

Office(Word、Excel、PowerPointなど)のバージョンを確認する方法

Microsoft Officeも時を得て、大きく様変わりしてきました。トラブルを解決しようとするとき、あるいは、何かの操作を探すときなど、 ...

続きを見る

おすすめ記事と広告

こんな記事も読まれています

表のミニツールバーにコマンドが追加

Word2013では、表内で右クリックして表示されるミニツールバーに[挿入]と[削除]のコマンドが追加されました。 下は、Word2010の ...

ふりがなフィールドのカブシキガイシャを省きたい

Accessには、自動ふりがなという便利な機能があります。 便利なので、よく使用するのですが、ふりがなフィールドには、[カブシキガイシャ]と ...

累計はピボットテーブルで簡単に求められる

Excelで下のような表があって、日々の累計を求めるように指示を受けたとします。 下のように関数を使って求める方もいると思います。それでもい ...

おすすめピボットテーブルは簡単便利

Excel2013には、[挿入]タブに[おすすめピボットテーブル]というのがあります。 おすすめグラフと同じようにとても便利なものです。これ ...

PowerPivotウィンドウに数式列を追加する

Excel2013の[POWERPIVOT]タブにある[管理]ボタンをクリックして現れるウィンドウに数式列を追加する方法を紹介します。 下の ...

-Windows8 & Office2013 Access2013

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

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