Office 2019 Access 2019

レポートを数行おきに色が異なる縞模様(背景色)にするには

投稿日:2022年7月5日 更新日:

Accessでレポートを作成すると、既定で1行おきに背景色が異なる縞模様になります。

背景色はプロパティで簡単に変更できますし、背景色なしにすることもできます。

ただ、2行おきや3行おきの縞模様にするためには、少し工夫しなければなりません。

マクロアクション[一時変数の設定]を使って設定する方法を紹介します。

3行ずつ色が異なる縞模様のレポート

参考ここでのウィンドウの表示は[タブ付きドキュメント](既定)の設定にしています。

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

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

続きを見る

テーブルからレポートを作成

サンプルとして以下のようなテーブルがあります。

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

このテーブルを基に簡単にレポートを作成します。

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

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

以下のようなレポートが作成できます。

すでに1行おきに背景色が設定された縞模様になっています。

レポートの作成

作成されたレポートのコントロールの幅やヘッダーなどを調整したのが、以下のレポートです。

このレポートをもとに編集していきます。

編集後のレポート

[詳細]セクションの各コントロールの[背景スタイル]と[境界線スタイル]は[透明]にしています。

[詳細]セクションのコントロールのプロパティ

参考レポートは、ウィザードを使って作成することもできます。

レポートウィザードを使って表形式のレポートを作成

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

続きを見る

[詳細]セクションの[背景色]と[代替の背景色]

レポートをデザインビューで開いて、[詳細]セクションのプロパティを表示します。

[書式]タブにある[背景色]と[代替の背景色]をみると、ここで縞模様が作られていることがわかります。

レポートの[詳細]セクションのプロパティ[背景色]と[代替の背景色]

[代替の背景色]のカラーを変更してみます。

[代替の背景色]の[…]をクリックしてカラーパレットを表示して、任意の色を選択します。

参考[標準の色]から選択すると、カラーコードで表示されます。

[代替の背景色]のカラー変更

レポートビューに切り替えると、以下のように縞模様の色が変更されていることを確認できます。

[代替の背景色]のカラーを変更したレポート

[交互の行の色]から設定

プロパティの[代替の背景色]の設定は、デザインビューの[書式]タブにある[交互の行の色]から選択することもできます。

[詳細]セクションのバーを選択すると、コマンドが有効になります。この設定はプロパティの [代替の背景色]と連動しています。

デザインビューの[書式]タブにある[交互の行の色]

参考[交互の行の色]コマンドは、テーブルやフォームにもあります。

テーブルは、[ホーム]タブの[テキストの書式設定]グループにあります。

テーブルの[ホーム]タブの[交互の行の色]

フォームは[フォームデータシート]タブの[書式設定]グループにあります。デザインビューの[書式]タブにもあります。

各オブジェクトで別々の色の設定ができます。

フォームの[フォームデータシート]タブにある[交互の行の色]

参考[交互の行の色]については、以下の記事で解説しています。

一行おきに背景色を設定する

Access2007では[代替の塗りつぶし/背景色]という名前になっています。

レポートを縞模様なしにするには

レポートを縞模様なしにするには、[詳細]セクションのプロパティ[代替の背景色]で[色なし]を選択します。

または、[背景色]と同じ色にします。

[詳細]セクションのプロパティ[代替の背景色]で[色なし]を選択

以下のようになります。

マクロで縞模様を設定する場合は、[代替の背景色]は[色なし]にしておきます。

縞模様なしのレポート

数行おきに色が異なる縞模様にするためのマクロアクション

1行おきの色の設定は簡単にできますね。

しかし、2行おきや3行おきに色が異なる縞模様のレポートにするには、少し工夫しなければなりません。

Accessには、Excelのような行番号を返すROW関数はありません。

表示されている[詳細]セクションが何行目なのかを知るための処理が必要になります。

マクロアクションには、[一時変数の設定]というアクションがあります。この一時変数アクションを使うと何行目かを知ることができます。

[変数]とは一時的にデータを格納するための箱のようなものです。

また、レポートの[詳細]セクションのイベントには、[印刷時]というのがあります。この[印刷時]イベントで設定します。

まず、2行おきの縞模様にしてみます。

レポートの[読み込み時]イベントで[一時変数の設定]

レポートのプロパティを開きます。

左上の■をクリックすると、レポートのプロパティになります。

プロパティシートで[レポート]が選択されていることを確認してください。

[イベント]タブの[読み込み時]の[ビルダー選択]ボタン[…]をクリックします。

レポートのプロパティ[イベント]タブの[読み込み時]-[ビルダー選択]ボタン

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

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

マクロビルダーが表示されます。

[新しいアクションの追加]の▼をクリックして、マクロアクションの一覧から[一時変数の設定]を選択します。

マクロアクションの一覧から[一時変数の設定]を選択

[一時変数の設定]の[名前]のテキストボックスをポイントすると、以下のポップヒントが表示されます。

名前

一時変数の名前です。構文 TempVars!MyVariableName を使って、マクロ内の式で名前により変数を参照できます。MyVariableName は、このマクロの引数で使った名前です。

[一時変数の設定]の[名前]で表示されるポップヒント

一時変数の名前は、ここでは[line]とします。一時変数の名前は何でもいいです。後で使いますので、ここで付けた一時変数の名前は憶えておきます。

一時変数の名前は、自由に付けてかまいませんが、[@!&$.(ドット)]などの記号やスペースは使用できません。先頭文字に数字は使用できません。また、複数の変数を設定する場合、同じ名前にはできません。

[式]には[0]と入力します。

マクロアクション[一時変数の設定]の[名前]と[式]

マクロビルダーは、上書き保存して閉じます。

マクロビルダーの[上書き保存]と[閉じる]ボタン

プロパティの[読み込み時]には、[埋め込みマクロ]と表示されます。

マクロアクション設定後のプロパティ[読み込み時]

[詳細]セクションの[印刷時]イベントでマクロを設定

今度は、[詳細]セクションのプロパティを表示します。

[詳細]と記されたバーをクリックすると、[詳細]セクションプロパティが表示されます。

[イベント]タブの[印刷時]の[ビルダー選択]ボタン[…]をクリックします。

[詳細]セクションのプロパティ[イベント]タブの[印刷時]の[ビルダー選択]ボタン

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

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

[新しいアクションの追加]の▼をクリックして、マクロアクションの一覧から[If]を選択します。

マクロアクションの一覧から[If]を選択

[If]の条件式に以下のように入力します。[Mod]の前後には、半角スペースを入力します。

[Mod]の前後には、半角スペースを入力

[割られる数 Mod 割る数] で割られる数を割る数で割った余りを取得できます。

[TempVars]![line] Mod 4<2

テキストボックスに途中まで入力すると補助メニューが表示されますので、ダブルクリックするか、[Enter]キーを使って入力できます。

入力時の補助メニュー

マクロアクション[If]の[条件式]は、以下のようになります。

すぐ下にある[新しいアクションの追加]の▼をクリックします。

マクロアクション[If]の条件式

少し下へスクロールすると、マクロアクション[プロパティの設定]がありますので選択します。

マクロアクションの一覧から[プロパティの設定]を選択

[プロパティの設定]の[コントロール名]には、[詳細]と入力します。

[プロパティ]は、▼ボタンをクリックして選択肢の中から[背景色]を選択します。

[値]には、カラーコードを入力します。カラーコードは、プロパティでカラーパレットから選択すると確認できます。

入力が終わったら、[Elseの追加]をクリックします。

マクロアクション[プロパティの設定]

再度、マクロアクションの一覧から[プロパティの設定]を選択します。

[コントロール名]と[プロパティ]は同じ設定にして、[値]のみ[#FFFFFF]と入力します。

[#FFFFFF]は白のカラーコードです。

Elseの[プロパティの設定]

[If文の最後]の下にある[新しいアクション]で、[値の代入]を選択します。

マクロアクション[値の代入]は、[マクロデザイン]タブの[表示/非表示]グループにある[すべてのアクションを表示]をクリックしないと表示されませんので気をつけてください。

[すべてのアクションを表示]をクリックして、一番下までスクロールすると、最後から4番目にあります。

マクロアクションの一覧から[値の代入]を選択

マクロアクション[値の代入]の[アイテム]には、以下のように入力します。

[TempVars]![line]

[式]には、以下のように入力します。

[TempVars]![line]+1

これで[詳細]セクションが表示されるごとに、一時変数の値が1ずつ増えるようになります。

入力が終わったら、上書き保存して閉じます。

マクロアクション[値の代入]の[アイテム]と[式]

設定後[詳細]セクションの[印刷時]には、[埋め込みマクロ]と表示されます。

[詳細]セクションのプロパティ[印刷時]

印刷プレビューで表示

設定後のレポートを[印刷プレビュー]で表示します。

[レポートデザイン]タブの[表示]から[印刷プレビュー]をクリックします。

[レポートビュー]では、縞模様は表示されません。

[レポートデザイン]タブの[表示]から[印刷プレビュー]を選択

以下のように2行ずつの縞模様になります。

2行おきの縞模様になったレポートの印刷プレビュー

縞模様の行数を変更するには

3行おきの縞模様にするには、[詳細]セクションの[印刷時]イベントのマクロビルダーを表示して修正します。

[詳細]セクションのプロパティ[イベント]タブの[印刷時]は[埋め込みマクロ]と表示されていますが、[…]をクリックすると表示できます。

[詳細]セクションの[印刷時]の[…]ボタン

そして、以下のように修正します。

割る数は、指定したい行数の2倍の数にして、[<]の右は指定したい行数にします。

[TempVars]![line] Mod 6<3

[詳細]セクションの[印刷時]のマクロアクションを変更

印刷プレビューで確認すると、以下のようになります。

3行おきの縞模様になったレポートの印刷プレビュー

参考以下の記事では、レポートに数行おきに罫線を表示する方法を解説しています。

レポートの詳細セクションに直線を引いて数行おきに罫線を設定する

Accessのレポートで罫線を数行おきに設定する方法です。 Accessには罫線という機能はありませんが、[詳細]セクションに[直線]を引く ...

続きを見る

検索

ほかの記事も検索してみませんか?

Profile

執筆者/はま

-Office 2019 Access 2019

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

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